Имя: Пароль:
1C
1C 7.7
v7: v8: ПД FPrint 55K - хотят использовать как принтер чеков без налогового учета
,
0 spectre1978
 
06.03.14
10:34
Добрый день!

Есть фискальник FPrint 55K, перешитый в принтер документов (без ЭКЛЗ).
Хозяин хочет чтобы из документа "товарный чек" (торговля 7) печатался чек с наименованием, количеством и суммой. Никаких налоговых учетов не требуется, просто использование как принтера документов, похожих на чеки.
Подсоединил его по USB, разобрался с драйверами USB и сервисным режимом, тут все нормально.
В комплекте с устройством была шестая версия дров от атола, а также тестовая конфигурация семерки, в которой описывалось как использовать драйвер. На основе этой конфигурации сделал печатную форму, из которой выполняются вызовы драйвера. Все работает как хочется хозяину, но периодически возникает ошибка при вызове метода:

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

...

    // входим в режим регистрации
      // устанавливаем пароль кассира
      ECR.Password = "1";
      // входим в режим регистрации
      ECR.Mode = 1;
      Если ECR.SetMode() <> 0 тогда
        // Вот здесь периодически происходит ошибка - т.е. сравнение
        // возвращает не ноль
        Сообщить ("Не удалось войти в режим регистрации.");        
          Возврат;
      КонецЕсли;        

Что можно покопать? Если я изобретаю велосипед - прошу также направить на путь истинный.
1 spectre1978
 
06.03.14
10:37
Прошу прощения, тема про v7. Неправильно выбрал, если есть кто-то из модераторов - перенесите, пожалуйста, в v7.
2 Avganec
 
06.03.14
10:57
(0) а ошибка-то где вылезает? в какой момент?
3 spectre1978
 
06.03.14
11:05
(2) в коде указано. Ошибка возникает при вызове SetMode () в такой конструкции:
      ECR.Password = "1";
      ECR.Mode = 1;
      ECR.SetMode() в норме должно возвращать ноль, что означает что девайс вошел в режим регистрации. А иногда почему-то не возвращает.
4 Avganec
 
06.03.14
11:06
поставь пароль 30 - попробуй
5 Йохохо
 
06.03.14
11:07
не очень хорошо каждый раз логиниться для печати, в типовых ТО подключается при входе пользователя
6 Avganec
 
06.03.14
11:09
(5) это да, но тут не указано в четком виде, это перед печатью чека или это при логине.
7 spectre1978
 
06.03.14
11:10
(5), (6) кстати, о типовых. Может, есть возможность его присобачить более стандартными механизмами, чем я сделал?
8 spectre1978
 
06.03.14
11:11
+ это была вторая часть вопроса - "Если я изобретаю велосипед - прошу также направить на путь истинный"
9 Йохохо
 
06.03.14
11:12
плюс, возможно, надо просто подождать. И раз работа с драйвером напрямую надо обрабатывать ошибки и проверять состояние
10 spectre1978
 
06.03.14
11:12
(6) я тупо сделал внешнюю печатную форму и засунул туда код из тестовой конфигурации, потому что не знаю, как правильнее. Спасибо что сказали про логин.
11 Avganec
 
06.03.14
11:13
(10) посмотри как это сделано в ТиСе и не мучайся, иначе слишком много самому реализовывать.
12 Йохохо
 
06.03.14
11:19
http://www.shtrih-m.ru/downloads/show_prod_51_52_30.html
штриховская, но можно поглядеть
13 spectre1978
 
06.03.14
11:55
(12) поглядел, вызовы отличаются.
А интересно, есть ли в природе обработка ТО Штрих-55К под ТиС 7.7? На сайте АТОЛа не нашел, в комплекте тоже нет.
14 spectre1978
 
06.03.14
11:57
Удалось решить проблему заменой номера виртуального USB-компорта для регистратора (с COM14 на COM15). Помогло. Но кажется мне, что это ненадолго...
15 Avganec
 
06.03.14
12:01
(13) по-моему есть ТО для ФР, а штрих или еще что - без разницы.
16 spectre1978
 
06.03.14
12:05
(15) которая FR_comm.ert? ок, попробую. Сорри за тупые вопросы, просто никогда раньше этого не делал. Читаю, разбираюсь...
17 spectre1978
 
07.03.14
23:06
Всем спасибо за хорошие советы! Ни один из них с ходу не решал проблему, но тем не менее в общем они позволили вопрос победить. Настроил его как ФР "Триум-Ф" (уже имеющаяся настройка в обработке ТО ТиС с той же прописанной компонентой и идентификатором, что для FPrint, стандартная обработка fr_comm.ert) и все сразу заработало так как нужно, безо всяких костылей.