Вход | Регистрация

Информационные технологии ::

Метки:

Как работать с Таблицей Значений в подборе?

Я
   Таня
 
08.01.04 - 20:36
Чтобы при выборе значения в ТаблицеЗначений выполнялось то же что и при выборе значения в списке элементов?
Я так поняла, что при двойном щелчке мыши по элементу управление обратно передается в форму документа из которого попали в подбор на процедуру ОбработкаПодбора, как туда же попасть из ТаблицыЗначений?
 
  Рекламное место пустует
   345
1 - 08.01.04 - 21:37
При тычке мышой в ТЗ нужно пнуть обработку в одно место методом MakeChoice(<?>) ..... взято из СП ....
   Таня
 
2 - 08.01.04 - 22:31
Спасибо, это получилось.
Другой вопрос, почему в ТаблицеЗначений дает делать двойной щелчок только по первой строке?
   GrayT
 
3 - 08.01.04 - 22:37
А у тебя там, скорее всего, только одна трочка с данными и есть.
   Таня
 
4 - 08.01.04 - 22:52
Нет у меня там две строчки с данными.
Она у меня заполняется так:
Функция Остаток()
Стр = "";
Если Выбран() = 1 Тогда
Стр = "Остаток "+ТекущийЭлемент()+" на складе =" +Расчет()+" "+ЕдИзм;
Рег.УстановитьФильтр(ТекущийЭлемент());
Рег.ВыгрузитьИтоги(СписокПартий);
СписокПартий.ВидимостьКолонки("Стоимость",0);
КонецЕсли;
Возврат Стр;
КонецФункции
   GrayT
 
5 - 08.01.04 - 23:09
Стоп. MakeChoice - ВыполнитьВыбор. Ты выбираешь ВСЮ таблицу. Попробуй повесить свои процедурку в свойства таблицы (Дополнительно-Формула)
   GrayT
 
6 - 08.01.04 - 23:27
Ой, что это я сегодня сплошную ахинею несу.
Форма.ВыполнитьВыбор(тзВсего.ВнешнийЗаказ)- прекрасно работает, сам проверял :))
   Таня
 
7 - 08.01.04 - 23:36
Нет, у меня ВыполнитьВыбор работает.
У меня если
Рег.УстановитьФильтр(ТекущийЭлемент());
Рег.ВыгрузитьИтоги(СписокПартий);
СписокПартий.ВидимостьКолонки("Стоимость",0);
Стоит в функции, то можно выбирать только первую строку, если в другой процедуре, то нормально выбирает любые строки, но мне надо чтобы при переходе между элементами справочника СписокПартий показывал партии и остатки по выбранному товару.
   345
8 - 09.01.04 - 06:22
Вообще говоря, вопросы типа 7 возникают при отсутствии знаний по программированию в виндах ...

Любой ответ предполагает, что спрашивающий знает основы событийного программирования в виндах ... если этого нет - отвечать по большей части просто бесполезно ... не поймут ... К тому же в 1С с ее не слегка, а полностью ублюдочной реализацией событийной модели ...

Надо для начала освоить начала программирования в среде виндов ... Для этого не требуется изучать С или что либо иное, достаточно навороченное.  Достаточно потренироваться на кошках .... например VBA (виуал басик для аппликации)... тогда таких вопросов не будет ..

Я не смогу дать ответ на (7) - меня просто не поймут ... Нет знания базовых терминов и понятий ...
   GrayT
 
9 - 09.01.04 - 06:59
(8)А может все же попробуете, вдрг кто-нибудь да разбереться :)
(7) Не совсем понял что требуется. При переходе от строчки к строчке видеть остаток по товару в сноске или в еще одной колонке?
   Таня
 
10 - 09.01.04 - 07:15
Требуется при переходе от строчки к строчке видеть остатки по товару по каждой партии
Список элементов:
1. Пень трухлявый
2. Бревно березовое

Ставлю галку "Развернуть остатки по партиям", появляется ТЗ "СписокПартий" с колонками
Если выбрано Бревно, то отображаетсяся
Приход (партия) Количество
ПрихНакл 1         12
ПрихНакл 2         45

Если выбрано Пень, то отображается
Приход (партия) Количество
ПрихНакл 1         1

Список формируется по вышеописаному способу:
1.Фильтр Регистра по ТекущемуЭлементу()
2.Выгрузка Регистра в ТЗ "СписокПартий"
3.Скрывается ненужная колонка "Стоимость".

Если ставлю все три пункта в процедуру РазвернутьПоПартиям, то ТЗ формируется в виде
Товар           Приход (партия) Количество
Пень трухлявый    ПрихНакл 1         1
Бревно берез-е    ПрихНакл 1         12
Бревно берез-е    ПрихНакл 2         45

Перемещение по ТЗ происходит нормально по любым строкам

Как только помещаю формирование спискаПартий в Функцию, то позволяет выбирать только первую строку.

8) 345, все же попробуй объяснить
 
  Рекламное место пустует
   345
11 - 09.01.04 - 07:56
// в самое начало модуля формы
Var ПоследнийИдиот;                        

//----------------------------------------------------                  
function ПоказатьКолвоИдиотов()                      
   if CurrentItem().Selected() <> 1 then return ""; endIf;
   if Form.тз.Visible() <> 1 then return ""; endIf;
   if ПоследнийИдиот = CurrentItem() then return ""; endIf;
                       
   // отключаем видимость тз - чтобы кругом не ходить
   Form.тз.Visible(0);

   // здесь считаем остатки по партиям и засовываем в тз
   // именно здесь прячутся тормоза
       
   ПоследнийИдиот = CurrentItem();
   
   Form.тз.Visible(1);            
   return "";
endFunction // ПоказатьКолвоИдиотов

//----------------------------------------------------
procedure OnClose()
   SaveValue ("РазвернутьОстаткиПоПартиям",РазвернутьОстаткиПоПартиям);
EndProcedure  //OnClose
//----------------------------------------------------
procedure OnOpen()  
   ...............
   РазвернутьОстаткиПоПартиям=0;
   РазвернутьОстаткиПоПартиям=RestoreValue ("РазвернутьОстаткиПоПартиям");
   тз.NewColumn( "ПартияДемократии","НужныйТип" ,  , , "Партия" );
   тз.NewColumn( "КоличествоИдиотов","Число" , 15  ,3 , "Количество" );
   ПоследнийИдиот = "";
   ПоказатьКолвоИдиотов()
EndProcedure  //OnOpen
                                             


включение и выключение видимости ТЗ - уже у тя есть
только последним оператором надо вставить
ПоказатьКолвоИдиотов ... сразу при показе тз ....

вызов функции ПоказатьКолвоИдиотов засовывается в формулу в закладке
"Дополнительно"
текствового элемента, положенного на форму ...
   Лена
12 - 03.04.04 - 18:23
Кто нибудь - помогите. Нужно сделать подбор для расходной накладно. На складе товары храняться по разным ценам, и в подборе необходимо видеть реальный остаток по товару и конкретно по его цене.
   327
13 - 03.04.04 - 19:38
Посмотри, как сделано в типовой торговле выбор партии в строке товара в расходной накладной.... В общем то там все уже готово... и не надо ничего делать ...

Но могу заметить, что если люди озабочен выбором партии при продаже... это на практике делается в фирмешках с дурной организацией труда... и непонимающими людьми.... Еще в таких фирмах ЗП манагера привязывается к профиту конкретной продажи..

   А весь механизм ручного выбора партий позволяет продать одну и ту е партию несколько раз... При оформлении доков задним числом... И при перепроведении получишь.... бордель ...

   А так как руководителям такой фирмы все ХХХХХ.... виновата будешь ты... программа неправильно считает ...


P.S. а программа просто не рассчитана на автоматизированный бардак .....


Список тем форума
Рекламное место пустует   Рекламное место пустует
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует