11. Команда "Container.Accept" - принятие контейнера на хранение

korvin
Администратор
Сообщения: 201
Зарегистрирован: 18 ноя 2017, 15:36

11. Команда "Container.Accept" - принятие контейнера на хранение

Сообщение korvin » 11 мар 2019, 09:10

Код команды = 11.

Команда отдается путем добавления записи в таблицу 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 - имя компьютера, с которого отдается команда
Если системе не понравится команда, возникнет исключение raise.

Возвращает поля:
  • «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;

victor_i
Сообщения: 4
Зарегистрирован: 11 мар 2019, 11:22

Re: 11. Container.Accept - принятие контейнера на хранение

Сообщение victor_i » 11 мар 2019, 13:06

Здравствуйте Сергей.
Есть таблица CELL - список ячеек. После выполнения Container.Accept там проставится автоматически правильный CONTAINER_ID ?

Если в cell_out_name другое значение, чем мы указали в Cell_Name, значит система не смогла поместить в ту ячейку, в которую мы хотели и поместила в другую ?

korvin
Администратор
Сообщения: 201
Зарегистрирован: 18 ноя 2017, 15:36

Re: 11. Container.Accept - принятие контейнера на хранение

Сообщение korvin » 12 мар 2019, 07:14

victor_i писал(а):Здравствуйте Сергей.
Есть таблица CELL - список ячеек. После выполнения Container.Accept там проставится автоматически правильный CONTAINER_ID ?

Да. Именно так.

victor_i писал(а):Если в cell_out_name другое значение, чем мы указали в Cell_Name, значит система не смогла поместить в ту ячейку, в которую мы хотели и поместила в другую ?


В Cell_Name Вы указываете откуда забрать контейнер. А куда его поставить - система решает сама.

victor_i
Сообщения: 4
Зарегистрирован: 11 мар 2019, 11:22

Re: 11. Container.Accept - принятие контейнера на хранение

Сообщение victor_i » 12 мар 2019, 12:08

В Cell_Name Вы указываете откуда забрать контейнер. А куда его поставить - система решает сама.

Рабочее место кладовщика где он складывает товар в контейнер, это тоже считается ячейка ?
Кладовщик складывает товар в контейнер, вводит в нашу систему чего и сколько он положил, нажимает кнопку, мы формируем команду Container.Accept, посылаем ее, начинаем отслеживать выполнение по полу State , контейнер тем временем уезжает, когда приедет на место , поле cell_out_name заполнится, поле State =5.

korvin
Администратор
Сообщения: 201
Зарегистрирован: 18 ноя 2017, 15:36

Re: 11. Container.Accept - принятие контейнера на хранение

Сообщение korvin » 12 мар 2019, 13:31

victor_i писал(а):
В Cell_Name Вы указываете откуда забрать контейнер. А куда его поставить - система решает сама.

Рабочее место кладовщика где он складывает товар в контейнер, это тоже считается ячейка ?


Обычно рабочее место кладовщика это и есть конкретная ячейка на конкретном подскладе. У данного Заказчика их будет 11, кажется.

victor_i писал(а):Кладовщик складывает товар в контейнер, вводит в нашу систему чего и сколько он положил, нажимает кнопку, мы формируем команду Container.Accept, посылаем ее, начинаем отслеживать выполнение по полу State , контейнер тем временем уезжает, когда приедет на место , поле cell_out_name заполнится, поле State =5.

Все верно!


Вернуться в «АСК Рязань»