IPB

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >  
Добавить ответ в эту темуОткрыть тему
Округление (отброс) копеек проходит в чеке как скидка
lmlg1
сообщение 29.8.2019, 15:40
Сообщение #1


Завсегдатай
***

Группа: Пользователи
Сообщений: 233
Регистрация: 2.6.2010
Пользователь №: 21 580



Здравствуйте, уважаемые форумчане тема:http://forum.atol.ru/index.php?showtopic=38410&st=60, переросла в другие вопросы, поэтому открою новую. При выставлении в Настройках -> Общее->Способ округления в ККТ=Округление итоговой суммы к расчету, в чеке появляется Строка округление (см.Скан), а в разделе скидок чека появляется скидка равная округлению. Вопрос: как не отключая раздел скидок в чеке(т.к. есть еще скидки по дисконтам) убрать скидку связанную с округлением? Т.е. в frontol.currentDocument.totalSumDiscount при формировании чека записывается округление, которого там быть не должно.
Заранее благодарю за ответы.
Прикрепленные файлы
Прикрепленный файл  IMG_20190828_WA00011.jpg ( 140.96 килобайт ) Кол-во скачиваний: 32
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
zenik
сообщение 29.8.2019, 15:55
Сообщение #2


Магистр слова
********

Группа: Пользователи
Сообщений: 2 883
Регистрация: 30.10.2007
Пользователь №: 12 033



https://yadi.sk/i/eoIh-iaoz3YetQ
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
lmlg1
сообщение 29.8.2019, 16:03
Сообщение #3


Завсегдатай
***

Группа: Пользователи
Сообщений: 233
Регистрация: 2.6.2010
Пользователь №: 21 580



Цитата(zenik @ 29.8.2019, 15:55) *

Благодарю, если я правильно понимаю ваш скриншот то , предлагаете отключить Итог скидок начисленных на позицию и включить Итог скидок на документ и на позицию с процентом?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
zenik
сообщение 29.8.2019, 16:11
Сообщение #4


Магистр слова
********

Группа: Пользователи
Сообщений: 2 883
Регистрация: 30.10.2007
Пользователь №: 12 033



Цитата(lmlg1 @ 29.8.2019, 16:03) *
Благодарю, если я правильно понимаю ваш скриншот то , предлагаете отключить Итог скидок начисленных на позицию и включить Итог скидок на документ и на позицию с процентом?

Мне показалось, что это то что вы ищите... rolleyes.gif
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
lmlg1
сообщение 29.8.2019, 16:23
Сообщение #5


Завсегдатай
***

Группа: Пользователи
Сообщений: 233
Регистрация: 2.6.2010
Пользователь №: 21 580



Цитата(zenik @ 29.8.2019, 16:11) *
Мне показалось, что это то что вы ищите... rolleyes.gif

Ради очистки совести сделал, чек не особо изменился.

Фото чека

Сообщение отредактировал lmlg1 - 29.8.2019, 16:25
Прикрепленные файлы
Прикрепленный файл  IMG_20190829_WA00051.jpg ( 148.18 килобайт ) Кол-во скачиваний: 28
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
zenik
сообщение 29.8.2019, 16:55
Сообщение #6


Магистр слова
********

Группа: Пользователи
Сообщений: 2 883
Регистрация: 30.10.2007
Пользователь №: 12 033



Цитата(lmlg1 @ 29.8.2019, 16:23) *
Ради очистки совести сделал, чек не особо изменился.

Сорян.. Не на 3-й вкладке, а на 5-й - там итоги чека, а 3-я по строке.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
lmlg1
сообщение 29.8.2019, 17:03
Сообщение #7


Завсегдатай
***

Группа: Пользователи
Сообщений: 233
Регистрация: 2.6.2010
Пользователь №: 21 580



Тогда Вы меня тоже извините, я на 5ой и правил smile.gif))
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
zenik
сообщение 29.8.2019, 17:10
Сообщение #8


Магистр слова
********

Группа: Пользователи
Сообщений: 2 883
Регистрация: 30.10.2007
Пользователь №: 12 033



Цитата(lmlg1 @ 29.8.2019, 17:03) *
Тогда Вы меня тоже извините, я на 5ой и правил smile.gif))

Шаблон чека в виде файла...
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
lmlg1
сообщение 30.8.2019, 10:19
Сообщение #9


Завсегдатай
***

Группа: Пользователи
Сообщений: 233
Регистрация: 2.6.2010
Пользователь №: 21 580



function printHeader(print)
{
print.printLRStringLF("РМ №"+frontol.codeWorkplace,frontol.currentUser.name," ");
print.printLRStringLF(frontol.currentDocument.type.name+" №"+print.addCharLeft(frontol.currentDocument.number,0,dirol.gif,
"Смена №"+print.addCharLeft(frontol.currentDocument.sessionNumber,0,4)," ");
print.printLRStringLF("=","=","=");
}

function printPosition(print)
{
if (frontol.currentDocument.position.storno == 1)
print.printCenterString("СТОРНО"," ");
print.printString(frontol.currentDocument.position.number+". "+frontol.currentDocument.position.ware.text);
if (frontol.currentDocument.position.storno == 0)
{
print.printLRStringLF(" "+(frontol.currentDocument.position.fracSale?print.formatQuantity(frontol.currentDocument.position.quantity):frontol.currentDocument.position.qua
ntity)+"*"+
print.formatCurrency(frontol.currentDocument.position.price),
print.formatCurrency(frontol.currentDocument.position.sum),"_");
}

}

function printFooter(print)
{
{
print.printLRStringLF("=","=","=");
if(frontol.currentDocument.cardValues != "")
print.printStringWordWrap("Карта: "+frontol.currentDocument.cardValues);
print.printLRStringLF("Сумма",print.formatCurrency(frontol.currentDocument.sum),"_");
if (frontol.currentDocument.totalSumDiscount != 0)
if (frontol.currentDocument.totalSumDiscount < 0)
{ print.printLRString("Сумма итоговой скидки",print.formatCurrency(-frontol.currentDocument.totalSumDiscount),"_");
print.printLRString("+"+print.formatPercent(frontol.currentDocument.totalPercentDiscount)+"%",
print.formatCurrency(-frontol.currentDocument.totalSumDiscount),"_");
}
else
{
print.printLRString("Сумма итоговой скидки",print.formatCurrency(frontol.currentDocument.totalSumDiscount),"_");
print.printLRString("-"+print.formatPercent(frontol.currentDocument.totalPercentDiscount)+"%",
print.formatCurrency(frontol.currentDocument.totalSumDiscount),"_");
}
if (frontol.currentDocument.sum != frontol.currentDocument.sumWithDiscs )
print.printLRStringLF("Итоговая сумма",print.formatCurrency(frontol.currentDocument.sumWithDiscs),"_");
print.printStringWordWrap("Оплата");
for(frontol.currentDocument.payment.index = 1;
frontol.currentDocument.payment.index <=
frontol.currentDocument.payment.count;
frontol.currentDocument.payment.index++)
{
if(frontol.currentDocument.payment.sumInBaseCurrency > 0)
print.printLRString(" "+frontol.currentDocument.payment.type.text,
"="+print.formatCurrency(frontol.currentDocument.payment.sumInBaseCurrency),"_");
else
{
print.printStringWordWrap("Сдача");
print.printLRString(" "+frontol.currentDocument.payment.type.text,
"="+print.formatCurrency(-frontol.currentDocument.payment.sumInBaseCurrency),"_");
}
}
print.printLRStringLF("-","-","-");
for(frontol.currentDocument.servicePrintInfo.index = 1;
frontol.currentDocument.servicePrintInfo.index <= frontol.currentDocument.servicePrintInfo.count;
frontol.currentDocument.servicePrintInfo.index++)
if (frontol.currentDocument.servicePrintInfo.printGroup.code == print.printGroup.code)
{
}
}
}
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
lmlg1
сообщение 30.8.2019, 10:40
Сообщение #10


Завсегдатай
***

Группа: Пользователи
Сообщений: 233
Регистрация: 2.6.2010
Пользователь №: 21 580



В файле, очистил печать позиции, а то дублировалась

Сообщение отредактировал lmlg1 - 30.8.2019, 10:41
Прикрепленные файлы
Прикрепленный файл  0000000006_1.txt ( 2.86 килобайт ) Кол-во скачиваний: 3
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
zenik
сообщение 30.8.2019, 11:00
Сообщение #11


Магистр слова
********

Группа: Пользователи
Сообщений: 2 883
Регистрация: 30.10.2007
Пользователь №: 12 033



Цитата(lmlg1 @ 30.8.2019, 10:40) *
В файле, очистил печать позиции, а то дублировалась

Вы или что то не так делаете... или что то не договариваете. В вашем шаблоне итог скидок выводится через "totalSumDiscount", а в ней уже сумма с округлением. сумма без округлений выводится из: "discountDoc.totalSum".

Не портите свой шаблон, создайте 2 шаблона через мастер (с разными галками на 5 закладке), сравните - поймете в чем разница и перенесите в свой.

https://yadi.sk/i/GfvK3VrXfX7Yhg
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
lmlg1
сообщение 30.8.2019, 11:50
Сообщение #12


Завсегдатай
***

Группа: Пользователи
Сообщений: 233
Регистрация: 2.6.2010
Пользователь №: 21 580



Цитата(zenik @ 30.8.2019, 11:00) *
Вы или что то не так делаете... или что то не договариваете.

Что ж тут не договаривать/
Сделал так, создал шаблон новый. Заодно сделал СкринШот 5 закладки. применил.
Шаблон в файле

Frontol 6.3.1
Прикрепленные файлы
Прикрепленный файл  0000000014_2.txt ( 2.63 килобайт ) Кол-во скачиваний: 1
Прикрепленный файл  _______SS_5_01.png ( 6.62 килобайт ) Кол-во скачиваний: 16
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
zenik
сообщение 30.8.2019, 12:24
Сообщение #13


Магистр слова
********

Группа: Пользователи
Сообщений: 2 883
Регистрация: 30.10.2007
Пользователь №: 12 033



Цитата(lmlg1 @ 30.8.2019, 11:50) *
Сделал так...


Цитата(lmlg1 @ 29.8.2019, 15:40) *
Вопрос: как не отключая раздел скидок в чеке(т.к. есть еще скидки по дисконтам) убрать скидку связанную с округлением?


Вы делаете одно, а хотите другое...

Код
discountDoc.totalSum - Итоговая сумма скидок
totalSumDiscount - Сумма скидок на позиции, на документ с учётом округлений и отброса копеек

А потом вы жалуетесь, что за 4 страницы проблему решить не можете dry.gif
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
lmlg1
сообщение 30.8.2019, 13:08
Сообщение #14


Завсегдатай
***

Группа: Пользователи
Сообщений: 233
Регистрация: 2.6.2010
Пользователь №: 21 580



Цитата(zenik @ 30.8.2019, 12:24) *
Вы делаете одно, а хотите другое...

Код
discountDoc.totalSum - Итоговая сумма скидок
totalSumDiscount - Сумма скидок на позиции, на документ с учётом округлений и отброса копеек

А потом вы жалуетесь, что за 4 страницы проблему решить не можете dry.gif

Я пытаюсь разобраться, это раз.
Про различие переменных Вы писали параллельно с указанием галочек, это два
То что нужно выставить галочки, как Вы указали, и заодно заменить код после настроек мастеру, Вы не словом не обмолвились. (это я сейчас додумываю, как надо сделать), это три.
И да я не мог решит данную проблему, т.к. товарищи из Атола ОЧЕНЬ умные, но делится знаниями не хотят, а водят как Сусанины, это четыре
И к чести Вам, вы не стали водить, а указали конкретные точки применения услилий за что Вам огромное спасибо , это пять.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
zenik
сообщение 30.8.2019, 13:20
Сообщение #15


Магистр слова
********

Группа: Пользователи
Сообщений: 2 883
Регистрация: 30.10.2007
Пользователь №: 12 033



Цитата(lmlg1 @ 30.8.2019, 13:08) *
То что нужно выставить галочки, как Вы указали, и заодно заменить код после настроек мастеру, Вы не словом не обмолвились. (это я сейчас додумываю, как надо сделать), это три.

Картинку с настройками я привел свою - как стояло, так и сфоткал. Я то думал слово "(округленный)" будет прочитано и понято.
Править шаблон руками после мастера я тоже не предлагал - я предложил сравнить свой и сгенерированный мастером не округляемый итог.
Ну если получилось - то хорошо.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
АТОЛ: Царюков Ро...
сообщение 30.8.2019, 13:44
Сообщение #16


Тех.поддержка
********

Группа: Администраторы
Сообщений: 46 752
Регистрация: 25.9.2008
Из: Москва
Пользователь №: 14 717



Цитата(lmlg1 @ 30.8.2019, 13:08) *
т.к. товарищи из Атола ОЧЕНЬ умные, но делится знаниями не хотят, а водят как Сусанины, это четыре

все знания имеются в открытом доступе - это раз
путь к знаниям указан - это два
если нет желания получать эти знания, то указан запасной путь - к партнерам - это три


--------------------

ответы на 90% вопросов находятся в ДОКУМЕНТАЦИИ
еще 9% ответов ТУТ
P.S.: уважайте труд наших писателей - читайте мануалы
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
lmlg1
сообщение 30.8.2019, 14:08
Сообщение #17


Завсегдатай
***

Группа: Пользователи
Сообщений: 233
Регистрация: 2.6.2010
Пользователь №: 21 580



Цитата(zenik @ 30.8.2019, 13:20) *
Картинку с настройками я привел свою - как стояло, так и сфоткал. Я то думал слово "(округленный)" будет прочитано и понято.
Править шаблон руками после мастера я тоже не предлагал - я предложил сравнить свой и сгенерированный мастером не округляемый итог.
Ну если получилось - то хорошо.

Не совсем. Скидки вообще не печатаются(чек во вложении). Прописал так Заменив текст из мастера totalSumDiscount на discountDoc.totalSum :

function printFooter(print)
{
{
if (frontol.currentDocument.discountDoc.totalSum != 0) //Если Итоговая сумма скидок<>0
if (frontol.currentDocument.discountDoc.totalSum < 0)
{ print.printLRString("Сумма итоговой скидки",print.formatCurrency(-frontol.currentDocument.discountDoc.totalSum),"_");
print.printLRString("+"+print.formatPercent(frontol.currentDocument.totalPercentDiscount)+"%",
print.formatCurrency(-frontol.currentDocument.discountDoc.totalSum),"_");
}
else
{
print.printLRString("Сумма итоговой скидки",print.formatCurrency(frontol.currentDocument.discountDoc.totalSum),"_");
print.printLRString("-"+print.formatPercent(frontol.currentDocument.totalPercentDiscount)+"%",
print.formatCurrency(frontol.currentDocument.discountDoc.totalSum),"_");
}
print.printStringWordWrap("Оплата");
for(frontol.currentDocument.payment.index = 1;
frontol.currentDocument.payment.index <=
frontol.currentDocument.payment.count;
frontol.currentDocument.payment.index++)
{
if(frontol.currentDocument.payment.sumInBaseCurrency > 0)
print.printLRString(" "+frontol.currentDocument.payment.type.text,
"="+print.formatCurrency(frontol.currentDocument.payment.sumInBaseCurrency),"_");
else
{
print.printStringWordWrap("Сдача");
print.printLRString(" "+frontol.currentDocument.payment.type.text,
"="+print.formatCurrency(-frontol.currentDocument.payment.sumInBaseCurrency),"_");
}
}
print.printLRStringLF("-","-","-");
for(frontol.currentDocument.servicePrintInfo.index = 1;
frontol.currentDocument.servicePrintInfo.index <= frontol.currentDocument.servicePrintInfo.count;
frontol.currentDocument.servicePrintInfo.index++)
if (frontol.currentDocument.servicePrintInfo.printGroup.code == print.printGroup.code)
{
}
}
}
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
lmlg1
сообщение 30.8.2019, 14:08
Сообщение #18


Завсегдатай
***

Группа: Пользователи
Сообщений: 233
Регистрация: 2.6.2010
Пользователь №: 21 580



Цитата(zenik @ 30.8.2019, 13:20) *
Картинку с настройками я привел свою - как стояло, так и сфоткал. Я то думал слово "(округленный)" будет прочитано и понято.
Править шаблон руками после мастера я тоже не предлагал - я предложил сравнить свой и сгенерированный мастером не округляемый итог.
Ну если получилось - то хорошо.

Не совсем. Скидки вообще не печатаются(чек во вложении). Прописал так Заменив текст из мастера totalSumDiscount на discountDoc.totalSum :

function printFooter(print)
{
{
if (frontol.currentDocument.discountDoc.totalSum != 0) //Если Итоговая сумма скидок<>0
if (frontol.currentDocument.discountDoc.totalSum < 0)
{ print.printLRString("Сумма итоговой скидки",print.formatCurrency(-frontol.currentDocument.discountDoc.totalSum),"_");
print.printLRString("+"+print.formatPercent(frontol.currentDocument.totalPercentDiscount)+"%",
print.formatCurrency(-frontol.currentDocument.discountDoc.totalSum),"_");
}
else
{
print.printLRString("Сумма итоговой скидки",print.formatCurrency(frontol.currentDocument.discountDoc.totalSum),"_");
print.printLRString("-"+print.formatPercent(frontol.currentDocument.totalPercentDiscount)+"%",
print.formatCurrency(frontol.currentDocument.discountDoc.totalSum),"_");
}
print.printStringWordWrap("Оплата");
for(frontol.currentDocument.payment.index = 1;
frontol.currentDocument.payment.index <=
frontol.currentDocument.payment.count;
frontol.currentDocument.payment.index++)
{
if(frontol.currentDocument.payment.sumInBaseCurrency > 0)
print.printLRString(" "+frontol.currentDocument.payment.type.text,
"="+print.formatCurrency(frontol.currentDocument.payment.sumInBaseCurrency),"_");
else
{
print.printStringWordWrap("Сдача");
print.printLRString(" "+frontol.currentDocument.payment.type.text,
"="+print.formatCurrency(-frontol.currentDocument.payment.sumInBaseCurrency),"_");
}
}
print.printLRStringLF("-","-","-");
for(frontol.currentDocument.servicePrintInfo.index = 1;
frontol.currentDocument.servicePrintInfo.index <= frontol.currentDocument.servicePrintInfo.count;
frontol.currentDocument.servicePrintInfo.index++)
if (frontol.currentDocument.servicePrintInfo.printGroup.code == print.printGroup.code)
{
}
}
}

Сообщение отредактировал lmlg1 - 30.8.2019, 14:09
Прикрепленные файлы
Прикрепленный файл  IMG_20190830_WA0012_1.jpg ( 46.63 килобайт ) Кол-во скачиваний: 13
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
POUL
сообщение 30.8.2019, 14:15
Сообщение #19


Магистр слова
********

Группа: Партнеры
Сообщений: 13 993
Регистрация: 17.2.2007
Из: Москва
Пользователь №: 10 778



Цитата(lmlg1 @ 30.8.2019, 13:08) *
И да я не мог решит данную проблему, т.к. товарищи из Атола ОЧЕНЬ умные, но делится знаниями не хотят, а водят как Сусанины, это четыре


хотите, я преподам вам несколько уроков по программированию в Фронтол?


--------------------
FireBird Service Manager
Пишу скрипты за еду.
ООО "B2C"
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
zenik
сообщение 30.8.2019, 14:23
Сообщение #20


Магистр слова
********

Группа: Пользователи
Сообщений: 2 883
Регистрация: 30.10.2007
Пользователь №: 12 033



Цитата(lmlg1 @ 30.8.2019, 14:08) *
Не совсем. Скидки вообще не печатаются(чек во вложении). Прописал так Заменив текст из мастера totalSumDiscount на discountDoc.totalSum :

Мда... Ну как бы программирование оно чуточку сложнее, нежели просто поменять одно слово laugh.gif

Ваш код:
Код
Если сумма скидки <> 0 = напечатать скидку
Иначе = все равно печатать скидку...

Как напечатать скидку которой не то что 0... которой не существует?

Фронтол на этом месте захлебывается... благо хоть дальше чек печатать продолжает smile.gif

Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

2 страниц V   1 2 >
Добавить ответ в эту темуОткрыть тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 21.11.2019, 7:17
 Яндекс цитирования  Rambler's Top100