Добавлена
возможность ввода продукции сканером штрих-кода при возврате в накладных
отгрузки
и накладных возврата
просроченной продукции в модуле "экспедиция" или
"реализация".
В таком режиме ввода
нужно добавить новый документ (или выбрать уже введенный),
далее нажить
F7-номенклатура(продукция) и при открытом списке продукции проводим сканером по
штрих-коду
изделия. При этом в
случае отсутствия продукции в документе она добавляется с количеством 1, а если
такая
продукция уже была
введена ранее (или повторно провести сканером), то изменяется только количество
изделий
(+1 или -1 - в
соответствии с настройками см.ниже).
В накладных возврата просроченной продукции
устанавливается количество изделий, принятое от водителя,
т.е. сканируются
реальные изделия принятые от водителя (из магазина устанавливается такое же
количество).
В дальнейшем количество
из магазина можно изменить в соответствии с их документами и при расхождении
получится недостача
водителя.
В накладных отгрузки продукции сканером
устанавливается количество возвращенных изделий (принято
от водителя), при этом
принято магазином уменьшается на количество возвращено (изначально было сколько
отпустили изделий
столько магазин и принял, возвращено = 0) и при необходимости можно вручную
изменить
количество принятое
магазином. Также в случае расхождения образуется недостача водителя.
Для этого нужно сделать
следующие настройки:
- В параметрах модуля "Реализация"
на закладке "Брак.Возврат"
"При возврате
продукции (RTH/ESJ) первоначальный ввод колич.от водителя (Да) или из магазина
(Нет)" - "Да"
- В настройках формы документа "Накладная
отгрузки продукции" представление RTH30001, Программы:
(добавить следующий
текст программы - приведен для примера)
<BAR_CODE>
if factoryid='NHC' //
Такая странная настройка пока только для NHC -> ввод двумя сканерами
// Настроить префикс сканера годной продукции
= "1", сканера брака = "2"
// Для NHC в накладных имеет смысл только
годная продукция, поэтому оба сканера как "годные"
// Имя реквизита в док-те "код
номенклатуры", Имя реквизита "наименование номенклатуры",
// Идент. спр-ка, Реквизит получающий фокус,
кол-во символов Префикса,
// блок кода доп.обработки,
// блок кода поиска ранее введенной
номенклатуры
// По сканеру вместо Amnt-принято магазином
устанавливается Nattr2-принято от водителя (возвращено)
result:={;
'KANAL2','K2NAME','R11','NATTR2',1,;
{|bar_code|
FIELD->NATTR2:=FIELD->NATTR2+1, iif(Left(bar_code,1)='1',nil,nil) },;
{|bar_code,anal,table|
Prog("SEEK_BAR",,bar_code,anal,table) };
}
else
result:='DANAL2,D2NAME,R11,NATTR1'
endif
<SEEK_BAR>
Parameters
bar_code,anal,table
result:=(table)->(DbLocate('KANAL2',{anal}))
- В настройках формы документа "Накладная
возврата просроченной продукции" представление ESJ20001, Программы:
(добавить следующий
текст программы - приведен для примера)
<BAR_CODE>
if factoryid='NHC' //
Такая странная настройка пока только для NHC -> ввод двумя сканерами
// Настроить префикс сканера годной продукции
= "1", сканера брака = "2"
// Имя реквизита в док-те "код
номенклатуры", Имя реквизита "наименование номенклатуры",
// Идент. спр-ка, Реквизит получающий фокус,
кол-во символов Префикса,
// блок кода доп.обработки,
// блок кода поиска ранее введенной
номенклатуры
// По сканеру вместо Amnt-отпущено магазином
устанавливается Nattr1-принято от водителя
result:={;
'DANAL2','D2NAME','R11','NATTR1',1,;
{|bar_code|
FIELD->NATTR1:=FIELD->NATTR1-1,FIELD->CATTR10:=iif(Left(bar_code,1)='1','ПРОД','В
СЫРЬЕ') },;
{|bar_code,anal,table| Prog("SEEK_BAR",,bar_code,anal,table)
};
}
else
result:='DANAL2,D2NAME,R11,NATTR1'
endif
<SEEK_BAR>
Parameters
bar_code,anal,table
Result:=(table)->(DbLocate('DANAL2;CATTR10',{anal,iif(Left(bar_code,1)='1','ПРОД','В
СЫРЬЕ')}))
________________
Настройки для NHC
приведены для примера, как можно работать с двумя сканерами, настроить у них
префикс
и по этому префиксу
автоматически отличать изделия годные от брака.
Функция <SEEK_BAR>
может возвращать три значения: .t./.f./nil
В случае .t. - прежняя
запись найдена и увеличивается(уменьшается) только количество продукции
Если .f. - запись не
найдена и происходит добавление новой записи в документе (новой продукции)
(в обоих этих случаях
если в справочнике изделий не найдено изделия, то это изделие добавляется)
Если nil - то добавления
записи в документ не производится и добавление продукции в справочник
тоже не производится.
________________