Вход | Регистрация


1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: Переделываю печать чеков на 7.7 (номер чека)

v7: Переделываю печать чеков на 7.7 (номер чека)
Я
   monsterZE
 
21.05.18 - 15:03
Т.к. ККМ с новыми прошивками (и драйверами) не верно отображают налоговую ставку. Переделываю на "без прослойки от 1с".
Т.е. использую FprnM45. С основным разобрался, чеки пробиваются. Но номер чека идет как-будто сквозной?
НомерЧека = Объект.CheckNumber;
 
 
   monsterZE
 
1 - 21.05.18 - 15:10
Хотя в самом чеке печатается номер за смену..
   Масянька
 
2 - 21.05.18 - 15:22
(0) В Штрихе - Объект.OpenDocumentNumber
   monsterZE
 
3 - 21.05.18 - 15:26
(2) спс, у меня АТОЛ =)
   monsterZE
 
4 - 21.05.18 - 15:52
..нашел что в новых версиях ПО возвращается "сквозной номер"
но чет смотрю на бумажный чек - номер ФД 55, возвращает 42
   serpentt
 
5 - 21.05.18 - 16:11
я беру данные из регистра.
ОбъектECR.RegisterNumber = 51;
ОбъектECR.GetRegister();
НомерЧека = ОбъектECR.НомерДокумента;
НомерФД   = ОбъектECR.ФискальныйПризнак;
   serpentt
 
6 - 21.05.18 - 16:14
после того как пробью чек на ККМ
   monsterZE
 
7 - 21.05.18 - 16:21
(6) пасиб! а где взять нормальное описание регистров и свойств драйвера??
Нашел только Drivers8_FprnM_PM от 16 года
   trdm
 
8 - 21.05.18 - 16:26
(0) Дай поюзать? :)
   monsterZE
 
9 - 21.05.18 - 16:29
ОбъектECR.НомерДокумента - совпадает с номером ФД (сквозная нумерация)
ОбъектECR.ФискальныйПризнак - ФП в чеке
А номер чека за смену теперь нет? =)
   monsterZE
 
10 - 21.05.18 - 16:29
(8) Что именно? =)
 
 Рекламное место пустует
   trdm
 
11 - 21.05.18 - 16:40
(10) Обработку. Не хочу кормить инфостарт.
   monsterZE
 
12 - 21.05.18 - 16:41
(10) я сам думаю (пока не нашел вменяемого описания) купить http://catalog.mista.ru/public/603118
и выдернуть оттуда то, что мне нужно =)
   trdm
 
13 - 21.05.18 - 16:43
Ратинг там убойный 972... не умирает 7-ка.
   monsterZE
 
14 - 21.05.18 - 16:45
обработка от 1с, которая под 1.05
ее кручу сейчас =) там пока минимум, но пробивает
и есть примеры на яве
давай мыло, скину как "костяк" =)
   serpentt
 
15 - 21.05.18 - 16:48
(9) в 19 регистре смотри
   monsterZE
 
16 - 21.05.18 - 16:51
(15) поделись толковым описанием или подскажи, где найти =)
   Масянька
 
17 - 21.05.18 - 17:03
(15) (16) Немножко ОФФ: когда думали, какую кассу брать - Атол мастер (работал когда-то в ЦТО) отсоветовал. Теперь вот понимаю - не зря... Взяли Штрих - и описания, и драйвера - все разжевано для домохозяек.
   trdm
 
18 - 21.05.18 - 17:04
(14) Мыло в профайле.
   monsterZE
 
19 - 21.05.18 - 17:10
(17) ++ 
ну а тут, видимо, информация только для избранных =)
(18) ща отправлю (подключение ТО из типовой, драйвер 8.16.1)
   Garykom
 
20 - 21.05.18 - 17:13
(17) Угу и 64-битные драйвера есть у штриха да?

ТС просто странный и каталог "c:\Program Files (x86)\ATOL\Drivers8\Doc\" с файликом "Drivers8_FprnM_PM.pdf" почему то не обнаружил...
   Масянька
 
21 - 21.05.18 - 17:14
(20) На Win 7 64-бита - работает. Чего еще надо?
   Garykom
 
22 - 21.05.18 - 17:15
(21) С 64-битным клиентом 1С?
   monsterZE
 
23 - 21.05.18 - 17:16
(20) нет его.. сейчас переставлю
но в том, который есть, ничего нет про регистры
   monsterZE
 
24 - 21.05.18 - 17:16
(22) тут, вроде про 7.7, не?
   trdm
 
25 - 21.05.18 - 18:04
(19) Чудненько.
   serpentt
 
26 - 21.05.18 - 18:18
(16) я черпаю от сюда, там все есть
http://fs.atol.ru/SitePages/Центр%20загрузки.aspx
   Pit0n_08
 
27 - 21.05.18 - 18:53
(0) В релизах ТиС 996 и старше включены обработки работы с ККМ с ФФД 1.05 без использования xml-прокладок от 1С. Жаль только скидки перестали работать...
   serpentt
 
28 - 22.05.18 - 08:23
(27) Атол про это предупреждает...

// Скидка больше не изменяет сумму позиции, теперь она просто добавляет информационную печать. Необходимо рассчитывать в кассовом ПО цену со скидкой, а информацию по начисленным скидкам печатать нефискальной печатью и не передавать скидку в ККМ, поэтому код для начисления скидки закомментирован

//driver.DiscountValue = 10;
// DiscountType - Тип скидки:

//     0 - суммовая
//     1 - процентная

//driver.DiscountType = 0;
driver.EndItem();
driver.Caption = "В том числе скидка: 4.67";
driver.PrintString();
driver.Caption = "Цена без скидки: 55.00";
driver.PrintString();
   sanyaka
 
29 - 22.05.18 - 10:44
(27) прокладка то все равно осталась хоть и без xml...
   monsterZE
 
30 - 22.05.18 - 10:54
Продолжаем =) Авансы народ использует?
Пробую изменить способ расчета, при сумме меньшей чем полная - сообщает о "Чек оплачен не полностью". Ессно чек не пробивается.

22.05.2018 10:26:08.959 0000000031 Driver.Set_Name 002 Концентрат универс. (паста колер.) "Palizh" MIX (0,02л.),умбра
22.05.2018 10:26:08.959 0000000000 Driver.Set_Price 10
22.05.2018 10:26:08.959 0000000000 Driver.Set_Quantity 1
22.05.2018 10:26:08.960 0000000000 Driver.Set_TaxTypeNumber 3
22.05.2018 10:26:08.960 0000000000 Driver.Set_PaymentMode 2
22.05.2018 10:26:08.960 0000000000 Driver.Registration
22.05.2018 10:26:08.960 0000000000 Посылка пакета: C2 0A
22.05.2018 10:26:08.961 0000000000 Посылка пакета: C1 01 0B 00 00 92 00 01
22.05.2018 10:26:09.012 0000000063 Received async answer: 55 00 00
22.05.2018 10:26:09.012 0000000063 Write cached Email attribute (=)
22.05.2018 10:26:09.013 0000000000 Посылка пакета: C2 0B
22.05.2018 10:26:09.013 0000000000 Посылка пакета: C1 01 0C 00 00 E6 02 30 30 32 20 8A AE AD E6 A5 AD E2 E0 A0 E2 20 E3 AD A8 A2 A5 E0 E1 2E 20 28 AF A0 E1 E2 A0 20 AA AE AB A5 E0 2E 29 20 22 50 61 6C 69 7A 68 22 20 4D 49 58 20 28 30 2C 30 32 AB 2E 29 2C E3 AC A1 00 00 00 00 10 00 00 00 00 10 00 01 00 00 00 00 00 00 00 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02
22.05.2018 10:26:09.257 0000000234 Received async answer: 55 00 00
22.05.2018 10:26:09.258 0000000234 Driver.Set_Summ 8
22.05.2018 10:26:09.258 0000000000 Driver.Set_TypeClose 0
22.05.2018 10:26:09.258 0000000000 Driver.Payment
22.05.2018 10:26:09.259 0000000000 Посылка пакета: C2 0C
22.05.2018 10:26:09.259 0000000000 Посылка пакета: C1 01 0D 00 00 99 00 01 00 00 00 08 00
22.05.2018 10:26:09.406 0000000156 Received async answer: 55 00 00 00 00 02 00 00 00 00 00 00
22.05.2018 10:26:09.407 0000000156 Driver.CloseCheck
22.05.2018 10:26:09.407 0000000000 Посылка пакета: C2 0D
22.05.2018 10:26:09.407 0000000000 Посылка пакета: C1 01 0E 00 00 4A 00 01 00 00 00 00 00
22.05.2018 10:26:09.409 0000000000 AsyncResult: STATUS_AsyncError
22.05.2018 10:26:09.409 0000000000 Посылка пакета: C4
22.05.2018 10:26:09.410 0000000000 Received async err answer: 55 72 00
22.05.2018 10:26:09.410 0000000000 Посылка пакета: C4
22.05.2018 10:26:09.411 0000000000 Ошибка! ResultCode = -3897 ResultDescription = "Чек оплачен не полностью" BadParam = 0 BadParamDescription = "Ошибок в параметрах нет"
22.05.2018 10:29:14.219 0000184813 Driver.Set_DeviceEnabled -1
   monsterZE
 
31 - 22.05.18 - 11:00
Номер чека за смену так и не нашел.
51 52 регистры содержат сквозной номер
19 что-то свое (что возвращается по драйвер.ЧекНумбер)
   serpentt
 
32 - 22.05.18 - 11:04
   serpentt
 
33 - 22.05.18 - 11:07
 
 
   monsterZE
 
34 - 22.05.18 - 11:36
(33) ну я как-бэ не на столько слепой =)
я о том, что там содержится НЕ номер чека за смену
   serpentt
 
35 - 22.05.18 - 11:37
(34) что есть то есть... сам дохожу до всего методом проб и ошибок.

Т.К. сам Атол очень молчалив.
   monsterZE
 
36 - 22.05.18 - 11:43
(35) вы авансами, предоплатой у себя не пользуетесь? простые продажи?
   serpentt
 
37 - 22.05.18 - 11:47
(36) НЕТ, у нас простые продажи. Но у Атола проскакивала гдето памятка... как надо пробивать чеки при том или ином ТИПЕ.
   serpentt
 
38 - 22.05.18 - 11:50
(36) вот пример с форума Атол...

Прошивка 5199 и ФФД 1.05

Первый чек(продажа карты):

Driver.NewDocument();
Driver.Mode = 1;
Driver.SetMode();
Driver.CheckType = 1;
Driver.CheckMode = 1;
Driver.OpenCheck();
Driver.AttrNumber = 1055;
Driver.AttrValue = 1;
Driver.WriteAttribute();
Driver.BeginItem();
Driver.Name = "Карта на 1000 руб";
Driver.Price = 1000;
Driver.Quantity = 1;
Driver.Summ = 1000;
// // Признак предмета расчёта. Свойство ItemType может принимать значения:

//// 1 - товар, за исключением подакцизного товара

//// 2 - подакцизный товар

//// 3 - работа

//// 4 - услуга

//// 5 - приём ставок при деятельность по организации и проведению азартных игр

//// 6 - выплата выигрышей в азартных играх

//// 7 - реализация лотерейных билетов или ставок при деятельность по организации и проведению лотерей

//// 8 - выплата выигрышей в лотереях

//// 9 - прав на использование результатов интеллектуальной деятельности или средств индивидуализации

//// 10 - аванс, задаток, предоплата, кредит, взносе в счет оплаты, пени, штраф, вознаграждение, бонус и иной аналогичный предмет расчета

//// 11 - предмет расчета, состоящий из предметов, каждому из которых может быть присвоено значение от 0 до 10 (набор)

//// 12 - предмет расчета, не относящийся к предметам расчета, которым может быть присвоено значение от 0 до 11

Driver.ItemType = 10;
// // Признак способа расчёта. Свойство PaymentMode может принимать значения:

//// 1 - Полная предварительная оплата до момента передачи предмета расчета

//// 2 - Частичная предварительная оплата до момента передачи предмета расчета

//// 3 - Аванс

//// 4 - Полная оплата, в том числе с учетом аванса (предварительной оплаты) в момент передачи предмета расчета

//// 5 - Частичная оплата предмета расчета в момент его передачи с последующей оплатой в кредит

//// 6 - Передача предмета расчета без его оплаты в момент его передачи с последующей оплатой в кредит

//// 7 - Оплата предмета расчета после его передачи с оплатой в кредит (оплата кредита)

Driver.PaymentMode = 1;
Driver.Department = 0;
Driver.TaxTypeNumber = 4;
Driver.EndItem();
Driver.TypeClose = 0;
Driver.Summ = 1000.00;
Driver.Payment();
Driver.CloseCheck();

Второй чек(Покупка товара):
Driver.NewDocument();
Driver.Mode = 1;
Driver.SetMode();
Driver.CheckType = 1;
Driver.CheckMode = 1;
Driver.OpenCheck();
Driver.AttrNumber = 1055;
Driver.AttrValue = 1;
Driver.WriteAttribute();
Driver.BeginItem();
Driver.Name = "Телевизор";
Driver.Price = 5000;
Driver.Quantity = 1;
Driver.Summ = 5000;
// // Признак предмета расчёта. Свойство ItemType может принимать значения:

//// 1 - товар, за исключением подакцизного товара

//// 2 - подакцизный товар

//// 3 - работа

//// 4 - услуга

//// 5 - приём ставок при деятельность по организации и проведению азартных игр

//// 6 - выплата выигрышей в азартных играх

//// 7 - реализация лотерейных билетов или ставок при деятельность по организации и проведению лотерей

//// 8 - выплата выигрышей в лотереях

//// 9 - прав на использование результатов интеллектуальной деятельности или средств индивидуализации

//// 10 - аванс, задаток, предоплата, кредит, взносе в счет оплаты, пени, штраф, вознаграждение, бонус и иной аналогичный предмет расчета

//// 11 - предмет расчета, состоящий из предметов, каждому из которых может быть присвоено значение от 0 до 10 (набор)

//// 12 - предмет расчета, не относящийся к предметам расчета, которым может быть присвоено значение от 0 до 11

Driver.ItemType = 1;
// // Признак способа расчёта. Свойство PaymentMode может принимать значения:

//// 1 - Полная предварительная оплата до момента передачи предмета расчета

//// 2 - Частичная предварительная оплата до момента передачи предмета расчета

//// 3 - Аванс

//// 4 - Полная оплата, в том числе с учетом аванса (предварительной оплаты) в момент передачи предмета расчета

//// 5 - Частичная оплата предмета расчета в момент его передачи с последующей оплатой в кредит

//// 6 - Передача предмета расчета без его оплаты в момент его передачи с последующей оплатой в кредит

//// 7 - Оплата предмета расчета после его передачи с оплатой в кредит (оплата кредита)

Driver.PaymentMode = 4;
Driver.Department = 0;
Driver.TaxTypeNumber = 3;
Driver.EndItem();
Driver.TypeClose = 2;
Driver.Summ = 1000.00;
Driver.Payment();
Driver.TypeClose = 0;
Driver.Summ = 4000.00;
Driver.Payment();
Driver.CloseCheck();

Опять же это наша логика работы и как мы понимаем методологии ФНС
   serpentt
 
39 - 22.05.18 - 11:51
   monsterZE
 
40 - 22.05.18 - 11:56
я ща тоже, что насобирал, пересматриваю
похоже общая сумма по чеку должна быть = сумме товаров в нем
просто заносится в разные типы оплат
как раз вот этот хвост:
Driver.TypeClose = 2;
Driver.Summ = 1000.00;
Driver.Payment();
Driver.TypeClose = 0;
Driver.Summ = 4000.00;
Driver.Payment();

зы. у меня опт, карт нет =) спс!
   serpentt
 
41 - 22.05.18 - 11:59
(40) под словами "продажа карты" можно подразумевать любой товар.... :)
   monsterZE
 
42 - 22.05.18 - 12:20
я пока не представляю, как правильно увязать 
признак способа расчёта PaymentMode 
может принимать значения:
            //     1 - Полная предварительная оплата до момента передачи предмета расчета

            //     2 - Частичная предварительная оплата до момента передачи предмета расчета

            //     3 - Аванс

            //     4 - Полная оплата, в том числе с учетом аванса (предварительной оплаты) в момент передачи предмета расчета

            //     5 - Частичная оплата предмета расчета в момент его передачи с последующей оплатой в кредит

            //     6 - Передача предмета расчета без его оплаты в момент его передачи с последующей оплатой в кредит

            //     7 - Оплата предмета расчета после его передачи с оплатой в кредит (оплата кредита)

с вариантами закрытия чека 
Объект.TypeClose = 0; 
// 0 нал, 1 электронно, 2 предв оплата (аванс), 3 послед оплата (кредит), 4 иная форма опл, 5 плат.картой, 6 тарой, 7 кредитом
   monsterZE
 
43 - 22.05.18 - 12:21
надо чтоб бухи возможные варианты рассказали =)


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует