|   |   | 
| 
 | Фискальный регистратор 5 платформа | ☑ | ||
|---|---|---|---|---|
| 0
    
        Начинающий Восьмерочн 23.01.25✎ 14:27 | 
        Возникла необходимость печатать на фр нефискальный документ, при этом нужно чтобы обрезчик обрезал его как обычный фискальный документ.На тестовом аппарате что у меня есть такого добиться не удалось, в нете разная информация кто то пишет, что обрезчик должен выполнять свою функцию после инструкции fptr.endNonfiscalDocument();
 Данный код не на 1с, но сути это не меняет.Собственно вопрос, кто нибудь печатает не фискальные документы на ФР чтобы обрезчик их отрезал. | |||
| 1
    
        Garykom гуру 23.01.25✎ 14:33 | 
        хоть бы марку и модель ККТ написал...     | |||
| 2
    
        Начинающий Восьмерочн 23.01.25✎ 14:40 | 
        (1) АТОЛ FPrint-22ПТК,версия: 5.8.1, ФИСК.     | |||
| 3
    
        arsik гуру 23.01.25✎ 14:50 | 
        (0) Непонятно, что не получается то?  ТЫ методами 1С пользуешься или напрямую?     | |||
| 4
    
        arsik гуру 23.01.25✎ 15:13 | 
        Если методами БПО, то достаточно в текст документа вставит ь [отрезка] или [cut]     | |||
| 5
    
        Garykom гуру 23.01.25✎ 15:25 | 
        Вот это не производит отрезку?
 fptr.beginNonfiscalDocument(); fptr.setParam(fptr.LIBFPTR_PARAM_TEXT, "Проверка"); fptr.printText; fptr.setParam(fptr.LIBFPTR_PARAM_TEXT, ""+Символ(22)+Символы.ПС); fptr.printText; fptr.setParam(fptr.LIBFPTR_PARAM_PRINT_FOOTER, False); fptr.endNonfiscalDocument; | |||
| 6
    
        Начинающий Восьмерочн 23.01.25✎ 16:31 | 
        (5) Сейчас проверю.     | |||
| 7
    
        Начинающий Восьмерочн 23.01.25✎ 16:32 | 
        (4) Cut() не работает в 5 платформе.     | |||
| 8
    
        arsik гуру 23.01.25✎ 16:39 | 
        (7) Так я про БПО. БПО само уже по этому словосочетанию делит текстовое содержимое на части с обрезкой.
 Как по твоему реализована печать слип чеков эквайринга с обрезкой? | |||
| 9
    
        Начинающий Восьмерочн 23.01.25✎ 16:51 | 
        (5) В моем случае ни так 
 fptr.setParam(AtolConstants.LIBFPTR_PARAM_TEXT, "" + "\"\r\n"); fptr.setParam(AtolConstants.LIBFPTR_PARAM_PRINT_FOOTER, false); fptr.printText(); fptr.endNonfiscalDocument(); ни так fptr.setParam(AtolConstants.LIBFPTR_PARAM_TEXT, "" + "\"\"\r\n"); fptr.setParam(AtolConstants.LIBFPTR_PARAM_PRINT_FOOTER, false); fptr.printText(); fptr.endNonfiscalDocument(); не обрезает | |||
| 10
    
        Garykom гуру 23.01.25✎ 16:53 | 
        (9) "\"\r\n" <> ""+Символ(22)+Символы.ПС     | |||
| 11
    
        Начинающий Восьмерочн 23.01.25✎ 16:52 | 
        (3) Это C#, получается что напрямую.     | |||
| 12
    
        Garykom гуру 23.01.25✎ 16:56 | 
        (11) ну так вставь уже в текст символ с кодом ASCII 22
 PS и ты какую то чушь городишь в (9) LIBFPTR_PARAM_PRINT_FOOTER нужен для endNonfiscalDocument(), хотя не обязателен, по умолчанию true а LIBFPTR_PARAM_TEXT для printText() фуйли у тебя каша? | |||
| 13
    
        arsik гуру 23.01.25✎ 16:56 | 
        (11) А зачем? Или вы вообще не из 1С с оборудованием работаете?     | |||
| 14
    
        Начинающий Восьмерочн 23.01.25✎ 16:57 | 
        (13) Ага не из 1с.     | |||
| 15
    
        Garykom гуру 23.01.25✎ 17:03 | 
        Есть два варианта с принудительной отрезкой:
 1. Нативный драйвер ккт атол ее делает встретив Символ(22) в тексте 2. Не делает и это фича интеграционной компоненты 1С (через БПО), которая встреченный Символ(22) или "в текст документа вставить [отрезка] или [cut]" переводит в fptr.runCommand(); https://integration.atol.ru/api/?csharp#vypolnenie-komandy но какая именно команда хз, ищи сам | |||
| 16
    
        Garykom гуру 23.01.25✎ 17:00 | ||||
| 17
    
        Начинающий Восьмерочн 23.01.25✎ 17:05 | 
        (12)  fptr.setParam(AtolConstants.LIBFPTR_PARAM_TEXT,""+ (char)22 + Environment.NewLine);
 fptr.printText(); fptr.setParam(AtolConstants.LIBFPTR_PARAM_PRINT_FOOTER, false); fptr.endNonfiscalDocument(); Так тоже не обрезает | |||
| 18
    
        Garykom гуру 23.01.25✎ 17:07 | ||||
| 19
    
        Начинающий Восьмерочн 23.01.25✎ 17:10 | 
        (18) Этот вариант видел, но не хочется пустые чеки генерить,точнее с пустой суммой стремно как то пока что , мало ли чем аукнется.     | |||
| 20
    
        Garykom гуру 23.01.25✎ 17:10 | 
        (17) и когда новый beginNonfiscalDocument(); тоже не отрезает?
 суть что сверху у тебя уже есть отрезка по логике надо начать и завершить нефискальный, обязательно с выводом текста и тогда отрежет просто завершить без начала - нет смысла | |||
| 21
    
        Garykom гуру 23.01.25✎ 17:11 | 
        (19) причем тут сумма
 короче или прошивка и драйвер кривые или руки | |||
| 22
    
        Garykom гуру 23.01.25✎ 17:12 | 
        а команда отрезки 100% есть в прошивке
 просто в апи не вынесена, надо код знать для runCommand() | |||
| 23
    
        Начинающий Восьмерочн 23.01.25✎ 17:15 | 
        (20)  beginNonfiscalDocument();  не отрезает в том то и дело, он сильно выше по коду просто , печать не фискального чека идет уже после фискального, там обрез чик отрабатывает.     | |||
| 24
    
        Начинающий Восьмерочн 23.01.25✎ 18:56 | 
        Попробую на боевом принтере, может у меня на тестовом в параметрах что-то не донастроено.     | |||
| 25
    
        arsik гуру 23.01.25✎ 20:23 | 
        (24) Может сделать через реверс инжиниринг?
 Включите логирование в тестовой компоненте атола. Через нее же сделайте отрезку чека. В логе посмотрите команды. | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |