Имя: Пароль:
1C
1С v8
Штрих-М+1С и результат выгрузки чека в ФНС
0 SuperMario
 
19.05.17
14:30
Всех форумчан категорически приветствую!
Вопрос: совпадает ли наименование товара в чеке кассы и в чеке ФНС у вас?

Использую драйвер
ПрогИД = "AddIn.DrvFR";
ПодключитьВнешнююКомпоненту(ПрогИД);

в методе sale есть параметр
StringForPrinting, в который передается наименование.

Но дело в том, что если длина строки превышает 40 символов, то наименование не переносится на новую строку (даже если использовать Символы.ПС)
Т.о. на чеке ККМ часть данных просто пропадает.


Погуглил проблему и на форуме штрих-м нашел решение:
1.разбить строку на массив подстрок нужной длины
2. выводить каждую подстроку методом
ДрайверФР.StringForPrinting=подстрокаДляМПечати;
ДрайверФР.PrintString();


Но в приложении "проверка чеков"  наименование пустое (оно и верно, ведь параметр StringForPrinting для метода "sale" я передаю пустой)

У кого как выводится строка?

з.ы.
понимаю, что панацея = своять наименование , длиной в ширину чековой ленты.
Но может есть более оригинальное решение?
1 SeriyP
 
19.05.17
16:47
(0) Обновите прошивку на кассе до апрельской последней - начнет переносить строки.
+ Если хотите, чтобы больше символов в строку влезало: Тест Драйвера/Таблица 8 / Поле 4 = 5 Таким образом уменьшиться шрифт
2 SeriyP
 
19.05.17
16:53
(0) + в ОФД передается относительно товара то, что находится в FiscalString
3 SeriyP
 
19.05.17
16:56
4 SuperMario
 
23.05.17
12:52
(1) Спс за ответ. Будем шить)

(2) курю мануал 4.13 "Руководство программиста"

Sale Продажа

Продажа – торговая операция, при которой товар перемещается от оператора к клиенту, а деньги –
в обратном направлении: от клиента к оператору.
Команда производит регистрацию продажи определенного количества товара в определенную
секцию с вычислением налогов (см. «Инструкцию по эксплуатации»/«Руководство
оператора») без закрытия чека.
Перед вызовом метода в свойстве Password указать пароль оператора и заполнить перечисленные
в таблице используемые свойства.
В свойстве OperatorNumber возвращается порядковый номер оператора, чей пароль был введен.
Работает в режимах 2 (проверка на окончание 24 часов производится запросом из ФП до
выполнения операции), 4, 7, 8 (если статус 8-го режима ККМ=0) и 9 (см. свойства ECRMode и
ECRMode8Status).
Переводит ККМ в режим 8 подрежим 0, или из режима 2 в режим 3 при истечении 24 часов смены
(см. свойства ECRMode, ECRMode8Status).
Используемые свойства:

Password Целое до 8 разрядов RW Пароль для исполнения метода драйвера.

Quantity Дробн. 0,001..
9999999,999 RW Количество товара 252

Price Денеж. 0..
99999999,99 RW Цена за единицу товара. 251

Department Целое 0..16 RW Номер отдела (секции). 206

Tax1 Целое 0..4 RW 1 -ый номер налоговой группы. 279
Tax2 Целое 0..4 RW 2-ой номер налоговой группы. 282
Tax3 Целое 0..4 RW 3-ий номер налоговой группы. 284
Tax4 Целое 0..4 RW 4-ый номер налоговой группы. 287

StringForPrinting Строка – RW
Строка символов кодовой таблицы WIN1251
для печати (печатается на чеке в строке,
идущей перед строкой, содержащей
цену(сумму) и/или количество).

Модифицируемые свойства
OperatorNumber Целое 1..30 R Порядковый номер оператора, чей пароль был введен.

Нет FiscalString ((
5 LienXo
 
23.05.17
13:32
drv.Sale()
drv.StringForPrinting = "//Наименование уходящее в ОФД"

Строчка не печатается на чеке, но уходит в ОФД
6 LienXo
 
23.05.17
13:33
(+5) при этом не печатается вся строка, включая количество и цену
7 SuperMario
 
26.05.17
11:05
(5) как это- не печатается?
В какое тогда свойство метода передается строка для печати на ленте?
8 SuperMario
 
26.05.17
11:10
(5) сорь! вкурил.
надо попробовать.
Но это костыль - имхо))
9 LienXo
 
26.05.17
11:27
(8) Почему костыль? В ОФД ты строки передал как надо, а на печатной форме рисуй как бог на душу положит, главное требования к чеку соблюсти
10 SuperMario
 
26.05.17
11:33
(9) я был уверен, что в StringForPrinting  значение надо передавать до вызова Sale()
11 LienXo
 
26.05.17
11:35
(10) скажу больше - перед закрытием чека его еще и сбросить надо
drv.StringForPrinting = "";
drv.closecheck(...

иначе вылазить будет
12 SuperMario
 
26.05.17
11:42
(11) эт само собой)
13 SuperMario
 
26.05.17
13:03
(5) не работает.
на ОФД пустая строка наименования.
14 SuperMario
 
26.05.17
13:04
резюмирую - менять прошивку.