8.х Ошибка выгрузки отчета смены в 1С: Предприятие 8.1 (Далион) с Atol Easypos lite

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем BIG_Maks, 2 июл 2013.

  1. TopicStarter Overlay
    BIG_Maks
    Offline

    BIG_Maks

    Регистрация:
    25 июн 2013
    Сообщения:
    10
    Симпатии:
    0
    Баллы:
    1
    Добрый день. Появилась ошибка при выгрузки отчета с MInipos'a:


    Получение данных с кассы: Атол MiniPos Lite
    DalionBase >>> Функция: "тоВыполнитьДействие" Ошибка: Неверные параметры функции "ВыполнитьДействие"! Code: "0x80020009 - Ошибка"!

    Сама выгрузка с "Поса" выполняется автоматически, файл выгрузки заполняется, захожу в 1С, чтобы снять отчет, а там ( снимок экрана в конце сообщения)

    В модуле обработки нашел следующую процедуру:


    Процедура ЗагрузитьДанные(ДеревоКассовыхУзлов) Экспорт

    // Для совместимости с базовой версией
    ЗагружатьЧеки = Ложь;

    // проверка что хоть одна касса выбрана
    Если ДеревоКассовыхУзлов.Строки.Найти(1, "Пометка", Истина) = Неопределено Тогда
    ВыдатьПредупреждение("Не выбрана ни одна касса.");
    Возврат;
    КонецЕсли;

    Если РежимДата = 1 И НЕ ЗначениеЗаполнено(ДатаККМ) Тогда
    ВыдатьПредупреждение("Не заполнена дата документа");
    Возврат;
    КонецЕсли;

    Если РежимСнятияОтчета = 2 Тогда

    Если Не ЗначениеЗаполнено(ДатаКон) Тогда
    ВыдатьПредупреждение("Не заполнена дата окончания.");
    Возврат;
    КонецЕсли;

    Если ДатаКон < ДатаНач Тогда
    ВыдатьПредупреждение("Дата окончания должна быть больше дата начала.");
    Возврат;
    КонецЕсли;

    ИначеЕсли РежимСнятияОтчета = 3 Тогда

    Если НомерСменыКон < НомерСменыНач Тогда
    ВыдатьПредупреждение("Номер последней смены должен быть больше номера первой смены.");
    Возврат;
    КонецЕсли;

    КонецЕсли;

    Отчет = Новый ТаблицаЗначений;
    ОтчетУзел = Новый ТаблицаЗначений;
    Чеки = Новый ТаблицаЗначений;
    ЧекиУзел = Новый ТаблицаЗначений;
    Скидки = Новый ТаблицаЗначений;
    СкидкиУзел = Новый ТаблицаЗначений;
    Оплата = Новый ТаблицаЗначений;
    ОплатаУзел = Новый ТаблицаЗначений;

    Для Каждого СтрокаКассовыйУзел Из ДеревоКассовыхУзлов.Строки Цикл

    Если СтрокаКассовыйУзел.Пометка > 0 И Не ЗаполненыПараметрыКассовогоУзла(СтрокаКассовыйУзел.Ссылка, Ложь) Тогда
    Возврат;
    КонецЕсли;

    ОтчетУзел.Очистить();
    СтрокаКассы = "";
    Для Каждого СтрокаКасса Из СтрокаКассовыйУзел.Строки Цикл

    Если СтрокаКасса.Пометка <> 1 Тогда
    Продолжить;
    КонецЕсли;

    Сообщить("Получение данных с кассы: " + СокрЛП(СтрокаКасса.Ссылка));

    ТО = СтрокаКасса.Ссылка.ПолучитьОбъект();

    СтруктураПараметров = Новый Структура;

    Если РежимСнятияОтчета = 0 Тогда
    РежимСнятияОтчетаПар = "НовыеПродажи";
    ПараметрыСнятияОтчета = "";
    ИначеЕсли РежимСнятияОтчета = 1 Тогда
    РежимСнятияОтчетаПар = "ПоследняяКассоваяСмена";
    ПараметрыСнятияОтчета = "";
    ИначеЕсли РежимСнятияОтчета = 2 Тогда
    РежимСнятияОтчетаПар = "ЗаПериод";
    ПараметрыСнятияОтчета = СокрЛП(ДатаНач) + ";" + СокрЛП(ДатаКон);
    ИначеЕсли РежимСнятияОтчета = 3 Тогда
    РежимСнятияОтчетаПар = "КассовыеСмены";
    ПараметрыСнятияОтчета = Строка(НомерСменыНач) + ";" + Строка(НомерСменыКон);
    ИначеЕсли РежимСнятияОтчета = 4 Тогда
    РежимСнятияОтчетаПар = "ВесьФайл";
    ПараметрыСнятияОтчета = "";
    КонецЕсли;

    СтруктураПараметров.Вставить("РежимСнятияОтчета" , РежимСнятияОтчетаПар);
    СтруктураПараметров.Вставить("ПараметрыСнятияОтчета", ПараметрыСнятияОтчета);

    Результат = ТО.ВыполнитьДействие("ПолучитьОтчет", СтруктураПараметров);

    Если Результат.Ошибка Тогда

    Сообщить(СокрЛП(ТекущаяДата()) + " " + Результат.Описание);
    Сообщить(Результат.Подробно);

    Иначе

    Сообщить("Данные с кассы: " + СокрЛП(СтрокаКасса.Ссылка) + " получены.");
    Отчет = СтруктураПараметров.Товары;
    Чеки = СтруктураПараметров.Чеки;
    Скидки = СтруктураПараметров.Скидки;
    Оплата = СтруктураПараметров.Оплата;

    Если Не СводныйОтчет Тогда
    СтрокаКассы = СокрЛП(СтрокаКасса.Ссылка);
    СформироватьДокументы(Отчет, Чеки, Скидки, Оплата, СтрокаКассовыйУзел.Ссылка, СтрокаКассы, ЗагружатьЧеки);
    Иначе

    СтрокаКассы = СтрокаКассы + СокрЛП(СтрокаКасса.Ссылка) + ", ";
    Если ОтчетУзел.Количество() = 0 Тогда
    ОтчетУзел = Отчет.Скопировать();
    Иначе

    Для Каждого СтрокаОтчета Из Отчет Цикл

    НоваяСтрока = ОтчетУзел.Добавить();
    ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаОтчета);

    КонецЦикла;

    КонецЕсли;

    Если ЧекиУзел.Количество() = 0 Тогда
    ЧекиУзел = Чеки.Скопировать();
    Иначе

    Для Каждого СтрокаЧек Из Чеки Цикл

    НоваяСтрока = ЧекиУзел.Добавить();
    ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаЧек);

    КонецЦикла;

    КонецЕсли;

    Если СкидкиУзел.Количество() = 0 Тогда
    СкидкиУзел = Скидки.Скопировать();
    Иначе

    Для Каждого СтрокаСкидки Из Скидки Цикл

    НоваяСтрока = СкидкиУзел.Добавить();
    ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаСкидки);

    КонецЦикла;

    КонецЕсли;

    Если ОплатаУзел.Количество() = 0 Тогда
    ОплатаУзел = Оплата.Скопировать();
    Иначе

    Для Каждого СтрокаОплата Из Оплата Цикл

    НоваяСтрока = ОплатаУзел.Добавить();
    ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаОплата);

    КонецЦикла;

    КонецЕсли;


    КонецЕсли;

    КонецЕсли;

    КонецЦикла;

    Если СводныйОтчет И ОтчетУзел.Количество() > 0 Тогда
    СформироватьДокументы(ОтчетУзел, ЧекиУзел, СкидкиУзел, ОплатаУзел, СтрокаКассовыйУзел.Ссылка, Лев(СтрокаКассы, СтрДлина(СтрокаКассы) - 2), ЗагружатьЧеки);
    КонецЕсли;

    КонецЦикла;

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

    Вложения:

  2. rshakiro
    Offline

    rshakiro Профессионал в 1С Команда форума

    Регистрация:
    17 мар 2011
    Сообщения:
    2.236
    Симпатии:
    144
    Баллы:
    104
    После чего появилась ошибка?? Проверьте создается ли файл при закрытии смены...
  3. TopicStarter Overlay
    BIG_Maks
    Offline

    BIG_Maks

    Регистрация:
    25 июн 2013
    Сообщения:
    10
    Симпатии:
    0
    Баллы:
    1
    На самом деле я только начал заниматься настройкой обмена с нуля. При закрытии не создается, создается лишь при нажатии в сервисе Поса "выгрузка данных".
    1С выдает ещё при снятии отчета, мол "обнаружен непрочитанный отчет", а потом вылазит ошибка!??

Поделиться этой страницей