...
Некоторые заказы могут быть составными, то есть состоять из нескольких позиций, которые необходимо передать заказчику (клиенту). Каждая отдельная позиция заказа называется товаром. Если заказ большой, состоит из нескольких позиций, каждая отдельная позиция со штрих-кодом может быть указана на вкладке Товары на форме заказа:
На вкладке Товары показана таблица, состоящая из следующих колонокданной вкладке товары представлены в виде таблицы, состоящей из нескольких колонок с необходимыми для работы параметрами:
Колонка | Описание | Комментарий |
---|---|---|
Название товара | Для одинаковых товаров название может принимать одинаковое значение | |
Идентификатор товара | Внешний универсальный дентификатор товара | |
Описание |
Подробное описание товара. | |
Штрих-код |
Штрих-код помогает отслеживать товары из одного заказа путем сканирования |
при выдаче клиенту. Кроме того, на экране Сканирование с помощью штрих-кода диспетчер может отслеживать данные о распределении конкретного заказа: определять какой машиной и каким рейсом заказ должен быть доставлен клиенту. | ||
Статус | Состояние выполнения товара. Подробнее см. в разделе Отслеживание выдачи товаров. | Редактируется водителем с мобильного приложения |
Комментарий | Поле для комментария водителя. | Редактируется водителем с мобильного приложения |
Причина отказа от товара | Причина недоставки товара. Выбирается из перечня причин отмены товаров. | Редактируется водителем с мобильного приложения |
Количество | Запланированное количество товаров в составе заказа | |
Фактическое количество | Количество, которое было фактически доставлено покупателю (может отличаться как в меньшую, так и в большую сторону). | |
Цена за единицу | Цена за одну единицу товара (штука, коробка, бутылка и т.д.) | |
Стоимость |
У каждой позиции товара в заказе есть три параметра - название, штрих-код и статус. Чтобы добавить товары в заказ, нажмите иконку (редактировать) рядом с полем Товары. Откроется окно Товары:
В открывшемся окне нажмите кнопку Создать и заполните обязательные поля Имя и Штрих-код. Для одинаковых товаров название может принимать одинаковое значение. Поле Статус заполняется автоматически: если товар не передан клиенту, в графе Статус будет стоять запись Не выдан клиенту; если товар передан клиенту, в графе Статус запись изменится на Выдан клиенту.
С помощью поля Штрих-код можно отслеживать товары из одного заказа путем сканирования штрих-кодов при выдаче клиенту. Кроме того, на экране Сканирование с помощью штрих-кода диспетчер может отслеживать данные о распределении конкретного заказа: определять какой машиной и каким рейсом заказ должен быть доставлен клиенту.
Отдельные позиции (товары) заказа могут быть импортированы в Максоптру из csv-файла и через REST API.
Чтобы узнать, как внести штрих-коды позиций заказов в систему при импорте заказов из csv-файла (название поле: “orderItems”), перейдите по ссылке.
Чтобы узнать, как внести штрих-коды позиций заказов в систему через Maxoptra REST API, перейдите по ссылке.
Чтобы сохранить товар в списке, нажмите иконку , подтверждая правильность товара, а затем кнопку Сохранить.
...
Общая стоимость всех единиц данного товара. |
Можно по необходимости добавлять или скрывать колонки с помощью кнопки , расположенной в правом верхнем углу экрана. Откроется диалог Видимость колонок, где можно включать/отключать нужные параметры, а также устанавливать порядок следования колонок путем перетаскивания строк.
Создание товаров
Новые товары можно создать тремя способами: вручную, импортировать из csv-файла, по API.
Создание товаров вручную
Нажмите на кнопку Создать в нижней части вкладки Товары. Откроется форма Новый товар, куда необходимо ввести информацию. Ни один из параметров в форме Товары не является обязательной.
Заполните форму и сохраните изменения. Для того, чтобы добавить еще один товар, пройдите всю процедуру с начала.
Также можно создать копию уже созданного товара. Для этого выделите нужный товар и нажмите кнопку Клонировать в нижней части экрана.
Система создаст клон товара, который вы впоследствии сможете отредактировать.
Чтобы удалить товар, выделите его и нажмите кнопку Удалить.
После внесения всех изменений, нажмите Сохранить.
Импорт товаров через CSV-файл
Информация о товарах, передаваемых через csv-файл, должна прописываться в колонке orderItems. Чтобы правильно записать товары в файл импорта, придерживайтесь следующего формата:
- Имя товара заключается в квадратные скобки - […],
- Прочая информация о товаре разделяется вертикальными чертами - |,
- Каждый товар отделяется от другого точкой с запятой - ;.
Пример записи: [Черная коробка]509361766273097|ЧК4561321|320|12|Осторожно! Не кантовать;
Примечание Данный формат записи товаров действует и в файлах экспорта.
Также см. Импoрт заказов. Параметры и требования к файлу импорта.
Изменения в API
В методе save информация о товарах прописывается в разделе orderItems API запроса. Раздел orderItems метода save состоит из следующих полей:
Название поля | Описание |
---|---|
name | Название товара |
barcode | Штрих-код товара |
externalId | Внешний идентификатор товара |
costPerUnit | Цена за единицу товара |
quantity | Планируемое количество товаров в составе заказа |
description | Дополнительная информация о товаре |
Примечание 1. Если в составе заказа несколько товаров, каждый из них нужно прописывать в отдельном тэге.
2. Ни одно из полей не является обязательным.
Code Block | ||||
---|---|---|---|---|
| ||||
<?xml version="1.0" encoding="UTF-8"?>
<apiRequest>
<sessionID>ccb48882378547909e3a26e75488e35c</sessionID>
<orders>
<order>
<orderReference>Order123</orderReference>
<areaOfControl>BeestonZone</areaOfControl>
<date>08/05/2019</date>
<client>
<name>Customer1</name>
<contactPerson>Gary Davis</contactPerson>
<contactNumber>100000001</contactNumber>
<contactEmail>jerry@gmail.com</contactEmail>
</client>
<location>
<name>ACOMBPETS-YO26 4LT</name>
<address>3 REGENT BUILDINGS,ACOMB,YORK, YO26 4LT</address>
<latitude>53.9663582</latitude>
<longitude>-1.1221</longitude>
<isVerified>true</isVerified>
</location>
<dropWindows>
<dropWindow>
<start>08/05/2019 8:00</start>
<end>08/05/2019 17:00</end>
</dropWindow>
</dropWindows>
<priority>2</priority>
<durationDrop>00:15</durationDrop>
<capacity>100</capacity>
<volume>200</volume>
<collection>true</collection>
<additionalInstructions>some additional instructions</additionalInstructions>
<stopSequence>any</stopSequence>
<orderItems>
<orderItem>
<name>Package1</name>
<barcode>666666686454666</barcode>
<externalId>test_1</externalId>
<costPerUnit>50</costPerUnit>
<quantity>10</quantity>
<description>Leave in front of the door</description>
</orderItem>
<orderItem>
<name>Package2</name>
<barcode>666666686454777</barcode>
<externalId>test_2</externalId>
<costPerUnit>30</costPerUnit>
<quantity>20</quantity>
<description>Fragile</description>
</orderItem>
</orderItems>
</order>
</orders>
</apiRequest> |
Информация о товарах также передается в ответах методов API по сбору статистики: getOrderStatuses, getConsignment, getScheduleByAOCOnDate, getScheduleByVehicleOnDate, getScheduleByVehicleRun.
getOrderStatuses
Раздел orderItems метода getOrderStatuses включает следующие поля:
Название поля | Описание |
---|---|
name | Название товара |
barcode | Штрих-код товара |
status | Текущий статус товара. Возможные статусы: выполнен, не выполнен, добавлен исполнителем, частично. |
externalId | Внешний идентификатор товара |
costPerUnit | Цена за единицу товара |
totalCost | Общая стоимость всех единиц данного товара |
quantity | Планируемое количество товаров в составе заказа. |
actualQuantity | Фактическое количество дотавленных товаров. |
description | Дополнительная информация о товаре |
failReason | Причина отказа от товара |
comment | Комментарий водителя |
Примечание Информация в полях failReason, status и comment предоставляется водителями с мобильного приложения.
Code Block | ||||
---|---|---|---|---|
| ||||
<?xml version="1.0" encoding="UTF-8"?>
<apiResponse version="2.0">
<orderStatusResponse>
<orders>
<order referenceNumber="1070773" status="FAILED" fullNotes="Incorrect address" />
<orderItem name="test1" barcode="CEARKF0000003001" status="NOT_CHECKED" costPerUnit="1" totalCost="10" quantity="10" actualQuantity="0" />
<orderItem name="test2" barcode="CEARKF0000003002" status="NOT_CHECKED" costPerUnit="1" totalCost="10" quantity="10" actualQuantity="0" />
</order>
<order referenceNumber="1071088" status="CLOSED" />
<orderItem name="test3" barcode="CEARKF0000003003" status="CHECKED" costPerUnit="1" totalCost="10" quantity="10" actualQuantity="10"/>
<orderItem name="test4" barcode="CEARKF0000003004" status="CHECKED" costPerUnit="2" totalCost="20" quantity="10" actualQuantity="20"/>
</orders>
</orderStatusResponse>
</apiResponse> |
getConsignment
Раздел orderItems метода getConsignment включает следующие поля:
Название поля | Описание |
---|---|
name | Название товара |
barcode | Штрих-код товара |
status | Текущий статус товара. Возможные статусы: выполнен, не выполнен, добавлен исполнителем, частично. |
externalId | Внешний идентификатор товара |
costPerUnit | Цена за единицу товара |
totalCost | Общая стоимость всех единиц данного товара |
quantity | Планируемое количество товаров в составе заказа. |
actualQuantity | Фактическое количество дотавленных товаров. |
description | Дополнительная информация о товаре |
failReason | Причина отказа от товара |
comment | Комментарий водителя |
Примечание Информация в полях failReason, status и comment предоставляется водителями с мобильного приложения.
Code Block | ||||
---|---|---|---|---|
| ||||
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<apiResponse version="1.0">
<consignmentResponse>
<consignments>
<consignment consignmentReference="4366700843117298688">
<orders>
<order referenceNumber="mID5205913" linkType="PND" status="NEW">
<orderItem name="test1" barcode="1008105964500552" status="NOT_CHECKED" costPerUnit="0" totalCost="0" quantity="0" actualQuantity="0" />
<orderItem name="test2" barcode="2521250862053500" status="NOT_CHECKED" costPerUnit="0" totalCost="0" quantity="0" actualQuantity="0" />
</order>
<order referenceNumber="mID5205917" linkType="PND" status="NEW">
<orderItem name="test3" barcode="54654532583386658" status="NOT_CHECKED" costPerUnit="0" totalCost="0" quantity="0" actualQuantity="0" />
<orderItem name="test4" barcode="54561646465455" status="NOT_CHECKED" costPerUnit="0" totalCost="0" quantity="0" actualQuantity="0" />
<orderItem name="eqw" barcode="eqweqw" status="NOT_CHECKED" costPerUnit="0" quantity="0" />
</order>
</orders> </consignment> </consignments>
</consignmentResponse>
</apiResponse> |
getSchedulesByAOCOnDate, getScheduleByVehicleOnDate и getScheduleByVehicleRun
Эти три метода могут быть объединены в одну группу, поскольку их ответы имеют одинаковую структуру. Раздел orderItems вответах данных трех методов включает следующие поля:
Название поля | Описание |
---|---|
name | Название товара |
barcode | Штрих-код товара |
status | Текущий статус товара. Возможные статусы: выполнен, не выполнен, добавлен исполнителем, частично. |
externalId | Внешний идентификатор товара |
costPerUnit | Цена за единицу товара |
totalCost | Общая стоимость всех единиц данного товара |
quantity | Планируемое количество товаров в составе заказа. |
actualQuantity | Фактическое количество дотавленных товаров. |
description | Дополнительная информация о товаре |
failReason | Причина отказа от товара |
comment | Комментарий водителя |
Примечание Информация в полях failReason, status и comment предоставляется водителями с мобильного приложения.
Code Block | ||||
---|---|---|---|---|
| ||||
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<apiResponse version="1.0">
<scheduleResponse>
<units timeZone="Greenwich Mean Time" timeZoneOffset="GMT+0:00" currency="GBP" distanceUnits="MILE" speedUnits="MILES_PER_HOUR" durationUnits="MINUTE" weightUnits="Kg" volumeUnits="m3"/>
<vehicles>
<vehicle id="30281" name="!cup" driverName="!cup" driverPhone="+201904251904" driverExternalID="!cup" externalID="!cup" costByDistance="1" vehicleActivationCost="0" costPerOrder="0"
maxWeight="1" maxVolume="1" aocId="190">
<run runDay="20/05/2019" runNumber="1" planDistance="100.38" factDistance="" planDuration="454" factDuration="10" runStartTime="20/05/2019 01:00" runEndTime="20/05/2019
08:34" runLoadingEndTime="20/05/2019 01:10" availabilityStartTime="20/05/2019 01:00" availabilityEndTime="20/05/2019 22:59" planWeight="0" planVolume="0" weightUtilization="0"
volumeUtilization="0" cost="100.38">
<location locationType="PICKUP" name="ChippenhamZone" address="ChippenhamZone" latitude="51.391494" longitude="-2.070923" planArrivalTime="20/05/2019 01:00" planDepartureTime="20/05/2019 01:10" factArrivalTime="" factDepartureTime=""planMileage="0" mileage="0" factMileage="" factDuration="" planDrivingTime="0" factDrivingTime="" planStopDuration="10" factStopDuration="" estimatedArrivalTime="" estimatedDepartureTime=""/>
<location number="1" locationType="DROP" name="Primrose Hill 28, Bath, England, BA1 2, GB" address="Primrose Hill 28, Bath, England, BA1 2, GB" latitude="51.395717" longitude="-2.376594" planArrivalTime="20/05/2019 01:58" planDepartureTime="20/05/2019 02:11" factArrivalTime="" factDepartureTime="" planMileage="17.5" mileage="17.5" factMileage=""
factDuration="" planDrivingTime="48" factDrivingTime="" planStopDuration="13" factStopDuration="" estimatedArrivalTime="" estimatedDepartureTime=""/>
<location number="2" locationType="DROP" name="!cup" address="Sanham Green Farm Cottages 1, Sanham Green, RG17 0RS, United Kingdom" latitude="51.399206" longitude="-1.516113"
planArrivalTime="20/05/2019 02:14" planDepartureTime="20/05/2019 03:57" factArrivalTime="" factDepartureTime="" planMileage="29.1" mileage="29.1" factMileage="" factDuration="" planDrivingTime="64" factDrivingTime="" planStopDuration="103" factStopDuration="" estimatedArrivalTime="" estimatedDepartureTime="" isVerified="false"/>
<location number="3" locationType="DROP" name="Chilswell Lane, Oxford, England, OX1 5, GB" address="Chilswell Lane, Oxford, England, OX1 5, GB" latitude="51.726228" longitude="-1.286245" planArrivalTime="20/05/2019 04:45" planDepartureTime="20/05/2019 04:58" factArrivalTime="" factDepartureTime="" planMileage="50.1" mileage="50.1" factMileage=""
factDuration="" planDrivingTime="215" factDrivingTime="" planStopDuration="13" factStopDuration="" estimatedArrivalTime="" estimatedDepartureTime="">
<order orderReference="mID5662073" orderId="5662073" status="ALLOCATED" task="DROP" duration="0" weight="0" volume="0">
<orderItem name="test" barcode="123456" status="NOT_CHECKED" costPerUnit="0" totalCost="0" quantity="0" actualQuantity="0"/>
<aggregatedItemsStatus actualDelivery="0" scheduledDelivery="1" completionStatus="NOT_DELIVERED" /> </order>
</location>
</run>
</vehicle>
</vehicles>
</scheduleResponse>
</apiResponse> |
Отслеживание выдачи товаров
Anchor | ||||
---|---|---|---|---|
|
Для того, чтобы просмотреть товары на экране План-Факт, нажмите на иконку напротив запланированного заказа.
Выдачу товаров можно отслеживать в колонке Фактическое/Планируемое количество, которая показывает количество доставленных товаров относительно их общего количества.
Статусы выдачи товаров
В процессе выполнения заказа товары могут приобретать одно из конечных состояний (указывается водителем в мобильном приложении):
- Выполнен – товар был успешно доставлен;
- Не выполнен – товар не был доставлен;
- Добавлен исполнителем – к заказу добавлен новый товар;
- Частично – не все товары были доставлены и вручены покупателю.
Товары и их состояния выполнения можно увидеть в форме заказа, в путевом листе, в форме подтверждения доставки и во внешних отчетах. Также статусы товаров доступны в упомянутых методах API (см. выше).
Статусы выполнения заказов
В случае, если некоторые товары в составе заказа не были доставлены или были доставлены частично, общий статус всего заказа будет считаться завершенным, однако при этом заказ приобретает дополнительный статус завершения, который указывает диспетчеру на то, что не все товары были успешно доставлены.
Заказ может принимать одно из трех конечных состояний:
- Не выполнен;
- Выполнен;
- Частично.
Их можно увидеть в отдельной колонке на экране План-Факт под названием Состояние выполненного заказа.
Для удобства поиска заказов по их статусу завершения в верхней части экрана План-Факт был добавлен дополнительный фильтр Состояние выполненного заказа.
Примечание Данные возможности доступны лишь в том случае, если на вашем аккаунте подключена функциональность товаров. Для подключения этой функциональности, обратитесь в службу технической поддержки Максоптры.
Отмена получения товаров
Во время выполнения заказа некоторые товары могут быть не доставлены клиенту по той или иной причине. Эти причины представлены в новой вкладке Причины отмены товара на экране Настройки (доступна под ролью Администратора аккаунта).
Подробнее см. в разделе Настройка списка причин отмены товаров.