gifts2017

Массовая загрузка из ККМ off-line + загрузка оплат Штрих-М

Опубликовал Павел Чегодаев (untru) в раздел Обмен - Обмен с другими системами

Работая над подключением ККМ, к сожалению, обнаружил, что штатный механизм (+ обработка Штрих-М) мягко скажем не до конца продуманы. Первые попытки это исправить

Работая над подключением ккм к сожалению обнаружил что штатный механизм(+ обработка Штрих-М) мягко скажем не до конца продуманы. Исходные данные: 20 киосков и КА. В итоге загружались отдельно пол каждому киоску отчеты, и занимало это порядком времени. В этой обработке можно сразу указать папочки в которых лежат файлы, при этом он их все загрузит и переместит файлы в архив.

Так же продуман механизм загрузки оплат с карточек, которого небыло в типовом решении, загружались "40" транзакции у которых значение <> "1.000"  на сколько я разобрался есть еще 2.000 и 4.000 - это как раз и есть безнал.

Так же были немного доработана сама конфигурация, задача была загружать кассиров а так же дату чека и номер:

Создал регистр Кассиры с физ лицами и кодом ккм.

Обработка не сложная - кому нужно разбирутся поправят.

Изменения в типовой конфигурации(опять же, можно всегда убрать этот функционал из обработки и нечего не изменять):

 В обработке тоСервер:

Функция ЗагрузитьОтчетОПродажах(Идентификатор, Отчет,ИмяФайла=Неопределено,Склад=Неопределено) Экспорт

 после 

Отчет.Колонки.Добавить("Сумма");

/// +добавляем по запросу фирмы
Отчет.Колонки.Добавить("НомерЧека");
Отчет.Колонки.Добавить("НомерТранзакции");
Отчет.Колонки.Добавить("КодКассира");
Отчет.Колонки.Добавить("ДатаТранзакции");
//- конец


НомерЧека = Неопределено;
НомерСмены = Неопределено;
ВремОтчет = Неопределено;
СтрокаОтчета = Неопределено;
//+передаем имя файла
если ИмяФайла <> Неопределено Тогда
Объект.Параметры.ФайлОтчета = ИмяФайла;
КонецЕсли;
//-
Результат = Обработка.ЗагрузитьОтчет(Объект, ВремОтчет,Склад);
Если НЕ ЗначениеЗаполнено(Результат) Тогда
Запрос = Новый Запрос(
"ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1
| РегТО.КассаККМ
|ИЗ
| РегистрСведений.ТорговоеОборудование КАК РегТО
|ГДЕ
| РегТО.Идентификатор = &Идентификатор");
Запрос.УстановитьПараметр("Идентификатор", Идентификатор);
КассаККМ = Запрос.Выполнить().Выгрузить()[0].КассаККМ;
Позиция = Неопределено;
Для каждого Позиция Из ВремОтчет Цикл
ОписаниеПозиции = РаботаСТорговымОборудованием.ПолучитьОписаниеТовараККМ(КассаККМ, Позиция.ПЛУ);
//Если ОписаниеПозиции = Неопределено Тогда
// Отчет.Очистить();
// Результат = мОшибкаЗагрузкиОтчета;
// Прервать;
//КонецЕсли;
Сообщить(Позиция.ПЛУ);

СтрокаОтчета = Отчет.Добавить();
ЗаполнитьЗначенияСвойств(СтрокаОтчета, ОписаниеПозиции);
/// + было
//ЗаполнитьЗначенияСвойств(СтрокаОтчета, Позиция, "Количество, Цена, Сумма");
// стало чтоб попали наши поля
ЗаполнитьЗначенияСвойств(СтрокаОтчета, Позиция);// "Количество, Цена, Сумма");
//- конец
КонецЦикла;

Еще был добавлен механизм регистрации номеров транзакций, но это уже на ваше усмотрение, насколько вам нужно будет.

В архиве немного обработка + немного  доработанная стандартная обработка штрих-м

Скачать файлы

Наименование Файл Версия Размер
ШтрихМ загрузка.rar 27
.rar 30,48Kb
20.03.13
27
.rar 30,48Kb Скачать

См. также

Подписаться Добавить вознаграждение
В этой теме еще нет сообщений.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа