![]() | [1] [2] |
Как сделать отбор в справочнике по остатку не равному 0 ? 7.7 Оперативный учет, релиз 27 Проблема: есть большой справочник Товары. При подборе товара в документе, в форме списка товаров видны все элементы. Как сделать, чтобы в форму списка отбирались товары с остатком>0 ? Остатки вычисляются по регистру ОстатокТовара. |
Сформировать список значений и отбор по нему. |
Да, со списком должно получиться. Других, штатных вариантов нет? |
Тормозить будет так, что лучше забыть. |
Блин, оно и так тут все не быстрое...и справочник огромный и регистр. |
способ для извращенцев. завести в справочнике реквизит - остаток, его заполнять через прямое обращение к базе данных быстрыми запросами и по нему отбирать. либо прямые запросы + ТЗ. |
(6) и нафиг при прямых запросах делать реквизит? |
Попробую создать список запросом, потом применить метод: [b]ИспользоватьСписокЭлементов(СписокТов);[/b] Посмотрю, как сильно будет тормозить. |
База скулевая или dbf? |
2(7) я же русским по белому написал - "для извращений". P.S. анекдот вспомнился... Купец уезжает за моря и спрашивает дочек, мол чего вам привезти в подарок. Старшая: мне диадему брульянтовую. Средняя: мне зеркальце хрустальное. Младшая: а мне чудище мохнатое для сексуальных утех и извращений... Купец: доча, ты чё!? Младшая: ладно, пойдем иным путем... привези мне цветочек аленький... |
Приезжает мужик домой из командировки, а у него винда переставлена... |
База ДБФ... :) |
(8) Не делай так, козленочком станешь. В смысле, козлом отпущения. Прямые запросы, конечно +1, учитывая пожелания автора про "штатные методы" - верится в это с трудом. |
Как вариант. По кнопке подбор открывать обработку с уже заполненными номенклатурами с остатком и из нее колбасить в ТЧ (одно лишнее движение убирается ИспользоватьСписокЭлементов(СписокТов); ). |
Спасибо! :) Понятно стало, что хорошего решения нет. Тем более "штатного". Как говорят бортстрелки в "Ил-2" : "Ооо! Нет! Опять колбасить!!!!" ..ну или как-то так... |
13-Lexusss >Перекинуть базу из ДБФ в СКЛ дело не хитрое... |
существует масса способов ускорить открытие подбора с остатком но это не для афтара - ему нада здесь сразу и готовое у нас и дбф и скуль работают [b]быстро[/b] (хотя сверзвуковой скорости нет) |
17-Helen 1986 > Да, ладно...готового не нужно, достаточно хорошей идеи. Типа, "а у нас все хорошо работает..." Остальное я сам сделаю :Р |
это чож за документы? в заявку покупателя часто надо подбирать товары, которых нет сейчас, но будут скоро. |
а больше вроде никуда и не надо подбирать товар... |
Есть одна идея... Но она основана не на отборе "по ненулевым остаткам" (отбор по реквизитам доступен), а повышению комфорта юзера: убирается тягучее и раздражающее заполнение списка. Давненько эта тема была, не знаю, найду ли реализацию, но принцип механизма помню. |
18-Opener > Ну у нас все хорошо работает. Дальше справишься? :) |
(21) один из вариантов - по группам |
22-Sadovnikov >Да, справлюсь. Попробовал самый простой вариант - список по запросу, потом ИспользоватьСписокЭлементов(СписокТов); Приемлемо работает....не летает, но и не тормозит. |
19-Зелёный тролль > Документ Реализация - продажа препаратов в аптеках. 2/3 справочника в остатке 0. |
21-VZ > Расскажи, плиз, подробнее я лет 8 на форуме не был... пропустил, видимо... |
26-Opener > Суть самой медоды в следующем: обычно формула, определяющая количественные характеристики, срабатывает при формировании строки списка. Пока не выполнится - вывод следующей строки задерживается. Вот и оно - тягучий вывод списка, именуемый "тормозами". Вот тут делается фокус: заполнение количественными характеристиками делается не формулой (функцией) в столбце, а [u]функцией в модуле[/u], заполняющей количественные характеристики для [b]видимых[/b] строк списка. Но не сразу: функция в строке задает старт "функции модуля" с задержкой исполнения. Следующая выводимая строка подтверждает эту задержку и т.д. Таким образом, "функция в модуле" начнет свою работу через N-е время после того, как вывод списка закончится/приостановится (заполнится все окно вывода). И тут заполнение количественного столбца идет при остановившемся выводе - быстрее и фактически (немного), и психологически (много). Примерно так. Но проще традиционное: количество и прочее выводится в строке комментария под окном списка. Для актуальной строки. |
(26) описанное в (27) - тот де принцип - подробно расписан на Исе, см. у O-Planet |
Мазохисты... Имея скуль - так извращаться... 24-Opener > Держи, разбирайся: [url]http://www.rikcenter.ru/downloads.php?file=6[/url] |
Ок, спасибо. Интересная идея. Хотя у меня задача немного другая - не показывать некоторые строки ваааще, но нужно посмотреть. |
30-Opener> Это ты кого именно оспасибил? :) |
29-Sadovnikov > Спасибо! У меня не все базы скл-ные...в аптеках в основном дбф-ные. |
Это я скачивал Demo_RiK и замешкался немного :) |
32-Opener > "в аптеках в основном дбф-ные. " - классы из демки и запросы, заточенные под лайтSQL. |
Ок. сенкс! Дома буду разбираться... уже загрузили до конца дня. |
35-Opener > о! мне тут тоже небольшая аптечная сеть свалилась, они с НГ на БП 8ку перешли. Лупят типовыми операциями практически всё, заставили настроить им эти операции. Учёт товара по стоимости продажи с применением 42 счета. Мало того, это НТТ (неавтоматизирорванные торговые точки, то есть кассы вообще не обмениваются с базой 1С, ни в он-лайне, ни в офф-лайне). Как бы их на путь истинный наставить? То есть - [b]какой он, истинный путь аптекаря?[/b] |
они на ЕНВД, юр лицо одно, но с несколькими торговыми точками (собственно, аптеками) - щкоторые заведены как подразделения, и под каждую свой склад. БП типовые базовые везде. |
вроде как есть 1С-Розница-Аптека. |
Зеленый тролль. Мне досталась готовая самописная и самобытная конфигурация (с нуля написана). Парень, который ее настрогал - вполне квалифицированный программер. Только его под зад все время толкали (уже ощущаю на себе). Тем не менее все работает. Осталось чуть-чуть подпилить/подстрогать, шкуркой зачистить и рукавом отполировать. Чем и занимаюсь. Если что нужно по организации процесса - спрашивай. |
Проблему я решил просто. Лучше всего работает "способ для извращенцев". bml 5 - я добавил в справочник не реквизит Остаток, а признак (0 - нет остатка, 1-есть). Утром аптекарь запускает 1С и он обновляется. А днем по нему отбор выполняется. Приход товара устанавливает признак в 1. По времени, если не считать 50-секундной обработки утром, для аптекаря ничего не изменилось. |
Текущее время: 16:23. Часовой пояс GMT +3. | [1] [2] |