Работа 1С: 7.7 с ККТ АТОЛ ДТО10 (JSON задания)

03.07.18

Учетные задачи - Кассовые операции

Пробитие чеков через web сервер (JSON задания) ДТО10 АТОЛ.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Работа 1С: 7.7 с ККТ АТОЛ ДТО10 (JSON задания):
.ert 27,50Kb
61
61 Скачать (1 SM) Купить за 1 850 руб.

Выкладываю свою реализацию пробития чеков через web сервер.

1) Формируем товарную позицию 
 

 Товы = СоздатьОбъект("ТаблицаЗначений");

    Товы.НоваяКолонка("Товар",,,,,20);
    Товы.НоваяКолонка("Остаток","Число",9,3);
    Товы.НоваяКолонка("Цена","Число",10,3);
    Товы.НоваяКолонка("Сумма","Число",10,2);
    Товы.НоваяКолонка("Серия");
    Товы.НоваяКолонка("Номер","Число",10); 
    Товы.НоваяКолонка("ПолнОст","Число",8,3);
    Товы.НоваяКолонка("СуммаСкидки","Число",8,2);
    Товы.НоваяКолонка("СкидкаСуммой","Число",8,2);// хэсед итд
    Товы.НоваяКолонка("Итого","Число",10,2);
    Товы.НоваяКолонка("СекцияВЧеке","Число",2,0);
    Товы.НоваяКолонка("ЭтоТовар","Число",1,0);
    Товы.НоваяКолонка("Наличными","Число",10,2);
    Товы.НоваяКолонка("Электронно","Число",10,2);


            Товы.НоваяСтрока();
            Товы.Товар=ЭлементСпрПродажи.Товар;
            Если Число(ОстатокПоСерии(ЭлементСпрПродажи))<Кол Тогда
                Товы.Остаток=Число(ОстатокПоСерии(ЭлементСпрПродажи));
            Иначе
                Товы.Остаток=Кол;
            КонецЕсли;   
            Если (Товы.Товар.ВидТовара=Перечисление.ВидыТоваров.Услуга) и (Товы.Товар.Производство=0) Тогда
                СПТ=создатьОбъект("Справочник.Товары");
                спт.ИспользоватьДату(РабочаяДата(),1);
                СПТ.НайтиЭлемент(Товар);
                Товы.Цена=СПТ.ЦенаУслуги;  
            Иначе
                Товы.Цена=ЭлементСпрПродажи.Цена;
            КонецЕсли;
            
            Товы.Сумма=ОКР(Товы.Остаток*Товы.Цена,2);
            Товы.Серия=ЭлементСпрПродажи.Серия;
            Товы.Номер=ЭлементСпрПродажи.Код;
            Товы.ПолнОст=Число(ОстатокПоСерии(ЭлементСпрПродажи)); 
            Товы.ЭтоТовар = глОпределитьЭтоТовар(Товы.Товар);   
            Товы.СекцияВЧеке = глОпределитьСекцию(Товы.Товар);

2) вызываем обработку для пробития чека         

глНовыйУникальныйИдентификаторККТ(Объект,1);

        Параметры = СоздатьОбъект("СписокЗначений"); 

        Параметры.ДобавитьЗначение(СокрЛП(глРМК.ГлобальноУникальныйИдентификаторККТ));

        Параметры.ДобавитьЗначение("Чек");
        Параметры.ДобавитьЗначение(СокрЛП(глРМК.ККТwebIP));
        Параметры.ДобавитьЗначение(СокрЛП(глРМК.ККТwebPort));
        Параметры.ДобавитьЗначение(СокрЛП(глПользователь.ДляПечатиВЧеке));
        Параметры.ДобавитьЗначение(СокрЛП(глПользователь.ИНН));
         Параметры.ДобавитьЗначение(Товы);
         Параметры.ДобавитьЗначение(ПолученнаяСумма);
         Параметры.ДобавитьЗначение(СокрЛП(ТелефонПочтаПокупателя));
         Параметры.ДобавитьЗначение(ТипОперации);
         Параметры.ДобавитьЗначение(ОпределитьПараметрыКомиссионногоТовара(Товы));

        ОткрытьФормуМодально("Отчет",Параметры,КаталогИБ() + "\ExtForms\JSON ATOL.ert");
        
        Возврат Параметры;


 

- уникальные идентификатор создаю через             

глИнфо = СоздатьОбъект("AddIn.V7SysInfo");

глГлобальноУникальныйИдентификаторККТ =  глИнфо.СоздатьGUID();

- разбор JSON ответов реализовал через "MSScriptControl.ScriptControl"(пример где- то нашел уже не помню, не мое)

- post и get запросы через "WinHttp.WinHttpRequest.5.1".

 

В обработке пример использования как с ККТ через web сервер(ДТО10), так и через FprnM1C.dll(ДТО8).

Тестировалось и успешно работает с АТОЛ11Ф более месяца. 1с 7.7 - Релиз платформы 7.70.027.

https://money.yandex.ru/to/410012172123885

1С 7.7 ДТО8 ДТО10 JSON ККТ онлайн.

См. также

Оптовая торговля Розничная торговля ККМ ЭДО и ОФД Обмен с ГосИС Системный администратор Программист Оперативный учет 7.7 Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 1С:Комплексная 7.7 1С:Торговля и склад 7.7 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Россия Платные (руб)

Поддерживаются новые ставки НДС 5% и 7% для УСН при продаже через ККТ. Подключение фискального регистратора к 1С 7.7 в режиме онлайн-кассы в соответствии с 54-ФЗ. Поддержка актуальных версий драйверов ККТ: ДТО 10 и ДТО 8 для Атол, 4.15, 5.16 для Штрих-М. Поддержка розничной продажи маркированной продукции (алкоголь, табак, обувь, лекарства, шины, одежда, белье, парфюмерия, молочная продукция, вода и пр.).

2000 руб.

28.03.2017    482219    4515    3514    

2468

Кассовые операции ККМ Системный администратор Программист Бухгалтер Платформа 1С v7.7 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv7 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Программа для управления ККМ Атол и Штрих нового поколения (он-лайн ККТ под 54-ФЗ) с помощью текстового файла (ini файла) с изменениями включена 1 лицензия Для любых программ, которые умеют работать с текстовыми файлами. Внутри комплекта есть готовые к использованию обработки

4800 руб.

31.07.2017    172376    593    605    

205

ККМ Эквайринг/ридер магнитных карт Системный администратор Программист Оперативный учет 7.7 1С:Торговля и склад 7.7 Оптовая торговля, дистрибуция, логистика Россия Управленческий учет Платные (руб)

Данная обработка предназначена для работы с ККТ АТОЛ на платформе 5.0 с драйверами АТОЛ версии 10.7.0.0 и выше для 1С:Торговля и Склад 9.2 (в соответствии с 54-ФЗ). Проста в установке и настройке. Реализован учет маркируемой продукции по ФФД 1.2. В поставку включена поддержка эквайринга на уровне драйверов (в данный момент – Сбер), реализован учет частичных оплат, добавлены эмуляторы кассы и эквайрингового терминала, добавлена обработка генерации тестовых кодов маркировки.

2000 руб.

20.08.2020    28155    65    81    

62

Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Обмен с ГосИС Программист Бухгалтер Оперативный учет 7.7 Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 1С:Комплексная 7.7 1С:Торговля и склад 7.7 1С:Упрощенное налогообложение 7.7 Сельское хозяйство и рыболовство Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Пищевая промышленность Россия Бухгалтерский учет Управленческий учет Платные (руб)

Полностью автоматизированный обмен между конфигурациями 1С 7.7 и ФГИС Меркурий через Ветис.API для всех видов деятельности (Опт, Розница, Производство). Для организации обмена с ФГИС Меркурий требуется минимальная доработка конфигураций (поддерживается "из коробки" 1С: "Торговля и склад ред. 9.2", 1С: "Комплексная ред. 4.5", 1С: "Бухгалтерия 7.7", 1С: "УСН 7.7", 1С Предприниматель, другие конфигурации по заказу, включая нетиповые и самописные). Модуль разработан таким образом, чтобы минимизировать затраты по внедрению в произвольную конфигурацию на базе 1С 7.7. Вы можете БЕСПЛАТНО скачать демо-версию без ограничения по функционалу и опробовать решение в полном объеме перед покупкой. В данном программном продукте реализованы все технические требования Россельхознадзора по обмену в формате 2.0 и 2.1. Решение прошло опытную эксплуатацию и тестирование на крупных объектах всех видов деятельности: Производство, Опт, Розница.

10000 руб.

21.11.2018    54244    157    105    

71

ККМ Кассовые операции Системный администратор Программист Платформа 1С v7.7 Конфигурации 1cv7 Россия Платные (руб)

Решение для тех, у кого остались не типовые конфигурации или сильно доработанные. Не все заказчики согласны платить за перенос конфигурации c V 1С 7.7 на V 1С 8 в связи с новым применением ККМ нового поколения (54-ФЗ). Код обработки полностью открыт, поэтому разработчику не составит труда использовать методы данной обработки для привязки фискального регистратора Атол любых моделей к конфигурации Заказчика.

2400 руб.

31.03.2017    54139    44    37    

45

Оптовая торговля Розничная торговля Обмен с ГосИС Бухгалтер Оперативный учет 7.7 1С:Торговля и склад 7.7 Бухгалтерский учет Акцизы Платные (руб)

Дорогие друзья! Предлагаю Вашему вниманию обработку, предназначенную для обмена данными из Вашей учетной системы с ЕГАИС, через универсальный транспортный модуль (УТМ). В обработке реализован весь функционал обмена: - загрузка справочных данных по контрагентам, производителям, импортерам алкогольной продукции; - загрузка справочных данных по номенклатуре алкогольной продукции; - загрузка остатков; - помощник сопоставления справочных данных и запись их в базу данных; - загрузка приходных ТТН и справок Б от поставщиков, отправка по ним актов всех типов, создание по ним приходных документов; - выгрузка расходных ТТН покупателям; - управление Марками и ведение Регистра 3; Обработку возможно использовать автономно, не внося изменений в Вашу Учетную систему. Код открыт.

6000 руб.

13.11.2015    127175    172    2529    

233

Закрытие периода Кассовые операции Учет доходов и расходов Бухгалтер Платформа 1С v7.7 Конфигурации 1cv7 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Россия Бухгалтерский учет ИП, ПБОЮЛ, КФХ Платные (руб)

Комплекс внешних обработок для ведения в электронной форме КУДиР для 1С 7.7 - книги учёта доходов и расходов для предприятий на УСН, ПСН, ЕСХН. Автоматическое заполнение раздела 1, 4 из журнала документов вашей информационной базы. Формирование кассовой книги №КО-4, приходных кассовых ордеров №КО-1 и расходных кассовых ордеров №КО-2.

3600 руб.

20.10.2014    126018    224    129    

221
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. SergioVB 10.09.18 12:50 Сейчас в теме
Атол обещает прекратить поддержку ДТО8 в 2019 году. Следовательно ФФД 1.1 скорее всего в FprnM1C.dll реализована не будет. И кто сидит на 7.7 будет использовать что-то аналогичное. У самого есть такие. Надо будет вникать.
2. rasta.ayaks 6 14.09.18 07:21 Сейчас в теме
Единственный минус в том, что не смог запустить на XP. Нужна система Win7 64 минимум и то надо мудрить с драйверами чтобы нормально встали.
3. victuan 4278 16.07.19 14:11 Сейчас в теме
Готовое решение с поддержкой ДТО8 и ДТО10 по ссылке http://expert.chistov.pro/public/603118/
И на ХР работает.
4. user1421566 07.07.20 16:37 Сейчас в теме
Доброго дня!
При открытии обработки и синтаксическом контроле в конфигураторе показывает ошибки.
Как я понял она должна быть интегрирована с конфигурацией объекты которой указаны на картинке, плюс отсутствуют глобальные переменные и процедуры.
Вопрос к автору - а не могли бы вы выложить обрезанный 1cv7.md с необходимыми объектами и процедурами с описанием переменных или описать их тип внутри топика обсуждения?
7. rasta.ayaks 6 08.07.20 22:40 Сейчас в теме
(4)
Если есть немного опыта в программировании 1с7, то структуру справочников можно воссоздать по тексту кода.
Пост не предлагает готовое решение, тут примерная инструкция.
Этот вариант был написан на скорую руку, как временное решение, МД нет, перешли на самописную 1с8 больше года назад.

Перем глРМК Экспорт;

Если ЗагрузитьВнешнююКомпоненту("V7PLUS.DLL") <> 0 Тогда
Попытка
глИнфо = СоздатьОбъект("AddIn.V7SysInfo");
исключение
Предупреждение("Ошибка при создании объекта AddIn.V7SysInfo");
конецпопытки;
Иначе
Предупреждение("Ошибка загрузки внешней компоненты V7PLUS.DLL ККТ");
КонецЕсли;


Процедура глЗафиксироватьВыполнениеЗадания(УникальныйИдентификаторККТ) Экспорт

спр = СоздатьОбъект("Справочник.СписокЗаданийККТ");
Если спр.НайтиПоНаименованию(УникальныйИдентификаторККТ)=0 Тогда
спр.Новый();
спр.Наименование = УникальныйИдентификаторККТ;
спр.РМК = глРМК;
спр.Записать();;
КонецЕсли;

спр.ДатаВыполнения = ТекущаяДата();

пЧас = "";
пМин="";
пСек="";
ТекущееВремя(пЧас,пМин,пСек);

спр.ВремяВыполнения = СокрЛП(пЧас)+":"+СокрЛП(пМин)+":"+СокрЛП(пСек);

спр.Записать();

КонецПроцедуры

Функция глНовыйУникальныйИдентификаторККТ(Объект="", ЗаписатьВКОнстанту=1) Экспорт


Если ЗаписатьВКОнстанту=1 Тогда
//глГлобальноУникальныйИдентификаторККТ = глИнфо.СоздатьGUID();
ПглГлобальноУникальныйИдентификаторККТ = глИнфо.СоздатьGUID();
спрРМК = СоздатьОбъект("Справочник.РМК");
спрРМК.НайтиЭлемент(глРМК);
спрРМК.ГлобальноУникальныйИдентификаторККТ = ПглГлобальноУникальныйИдентификаторККТ;
спрРМК.Записать();
глРМК = спрРМК.ТекущийЭлемент();
Иначе
ПглГлобальноУникальныйИдентификаторККТ = глИнфо.СоздатьGUID();
КонецЕсли;

спр = СоздатьОбъект("Справочник.СписокЗаданийККТ");
спр.Новый();
спр.Наименование = ПглГлобальноУникальныйИдентификаторККТ;
спр.Объект = Объект;
спр.РМК = глРМК;


спр.Дата = ТекущаяДата();

пЧас = "";
пМин="";
пСек="";
ТекущееВремя(пЧас,пМин,пСек);

спр.Время = СокрЛП(пЧас)+":"+СокрЛП(пМин)+":"+СокрЛП(пСек);
спр.Записать();

Если ЗаписатьВКОнстанту=0 Тогда

Возврат ПглГлобальноУникальныйИдентификаторККТ;

КонецЕсли;


КонецФункции
user1421566; +1 Ответить
5. rin4021 08.07.20 18:46 Сейчас в теме
Вопрос возник по отсутствию только одной процедуры: "глЗафиксироватьВыполнениеЗадания". Ожидаю её содержимое в описании, в ответах или в обновлении обработки.
6. rasta.ayaks 6 08.07.20 22:24 Сейчас в теме
(5)
Процедура глЗафиксироватьВыполнениеЗадания(УникальныйИдентификаторККТ) Экспорт

спр = СоздатьОбъект("Справочник.СписокЗаданийККТ");
Если спр.НайтиПоНаименованию(УникальныйИдентификаторККТ)=0 Тогда
спр.Новый();
спр.Наименование = УникальныйИдентификаторККТ;
спр.РМК = глРМК;
спр.Записать();;
КонецЕсли;

спр.ДатаВыполнения = ТекущаяДата();

пЧас = "";
пМин="";
пСек="";
ТекущееВремя(пЧас,пМин,пСек);

спр.ВремяВыполнения = СокрЛП(пЧас)+":"+СокрЛП(пМин)+":"+СокрЛП(пСек);

спр.Записать();

КонецПроцедуры
user1421566; +1 Ответить
8. user1421566 09.07.20 09:24 Сейчас в теме
(6) Огромное спасибо за Ваш труд!
Оставьте свое сообщение