Команда отдается путем добавления записи в таблицу sarmat.command_gas.
Команда принимает контейнер для хранения. Передается штрих-код контейнера, строка с содержимым контейнера, ячейка откуда забрать товар.
Строка с содержимым контейнера - в формате типа:
[КОД_ТОВАРА, КОЛИЧЕСТВО, КОММЕНТАРИЙ, ПАРТИЯ]
Где:
- КОД_ТОВАРА - символьное, ссылка на поле good_desc.ID
- КОЛИЧЕСТВО - количество принимаемого товара, штук
- КОММЕНТАРИЙ - комментарий текстовый
- ПАРТИЯ - ссылка на партию товара - на поле GD_PARTY.ID
В содержимом контейнера может быть несколько блоков типа [КОД_ТОВАРА1, КОЛИЧЕСТВО1, КОММЕНТАРИЙ1, ПАРТИЯ1], [КОД_ТОВАРА2, КОЛИЧЕСТВО2, КОММЕНТАРИЙ2, ПАРТИЯ2], ..
При добавлении записи в таблицу предаются поля:
- Command_type_id=11
- Container_barcode = Штрих-код контейнера
- Container_type = Размер контейнера (=0-большой, =1-маленький)
- Content [Varchar2] = содержимое контейнера
- RP_id = ID подсклада ячейки-источника
- Cell_Name = Название ячейки-источника
- comp_name - имя компьютера, с которого отдается команда
Возвращает поля:
- «State» результат выполнения команды:
- = 0 команда в процессе добавления
- = 1 команда принята АСК к выполнению
- = 2 ошибка выполнения команды
- = 3 команда начала выполняться
- = 5 команда успешно выполнена
- в поле «cell_out_name» наименование той ячейки, в которую будет помещен контейнер на хранение. Может заполниться не сразу после добавления команды, а через какое-то время.
- в поле «zone_letter» (символьное) заполняется ABC-зона, куда будет помещен товар на постоянное хранение. Поле заполняется по времени одновременно с «cell_out_name».
- в поле «container_cell_name» сохраняется текущее положение контейнера - ячейка, где он находится по ходу выполнения команды. если пусто, значит или на платформе робота, либо за пределами склада.
- в поле «container_rp_id» - подсклад, где находится контейнере в процессе выполнения команды - если пусто, то за пределами склада.
Пример добавления команды:
Код: Выделить всё
insert into sarmat.command_gas (command_type_id,rp_id, container_barcode ,content, cell_name)
values(11,2, '9438','[74158143;60;;53334][74158073;40;;53333]','001L000') returning ID into :CMDID;