Как округлить число в сумме документа?

1. Kutnor 25.06.13 11:48 Сейчас в теме
Помогите решить проблему, для счета нам нужна сумма без копеек. В товарах сумма округляеться до рубля, без скидки все замечательно, коппек нет, как только ставлю скидку то появляються копейки, при чем их не возможно округлить до рубля если кол-во уп. больше 1, т. к. не делиться, в версии 7.7 с этим проблем не было. Подскажите где что править в конфигурации. Конфигурация типовая УТ 10.3
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Kom-off 25.06.13 11:59 Сейчас в теме
(1) Я бы написал бы обработку по технологии заполнения табличных частей документов, которая бы округляла бы суммы в документе и пересчитывала бы НДС. У этого метода есть недостаток - при изменении числовых данных в табличной части, обработку производить повторно.
3. Kutnor 25.06.13 12:01 Сейчас в теме
нужно без костылей сделать, ндс кстати нет и оно не нужно, есть просто сумма без НДС
4. Kom-off 25.06.13 12:04 Сейчас в теме
(3) Без костылей, думаю, никак. Второй вариант - в код конфигурации лезть и править там, но это, на мой взгляд, мовитон.
5. Kutnor 25.06.13 12:07 Сейчас в теме
ну я согласен лезть в код конфигурации и править, ткните куда лезть и что править. Пожалуйста.
6. Kom-off 25.06.13 12:09 Сейчас в теме
(5) Дык, поэтому и предложил вариант (2).
7. A.Sytchev 25.06.13 12:12 Сейчас в теме
(5) Kutnor, если совсем-совсем копейки не нужны - можно в ТЧ документа, убрать дробную часть у поля. Опять же, как именно округлять хочешь? Просто отбрасывать копейки?
8. Kutnor 25.06.13 12:21 Сейчас в теме
(7) A.Sytchev, желательно именно округлять итоговую сумму документа, копейки совсем не нужны. Да я вот так вроде сделал, убрал копейки совсем, но так округления не происходит. А как имено округлить?
9. Kutnor 25.06.13 12:26 Сейчас в теме
вернее я сделал не так, я зашел в конфигуратор/документы/реализация товаров и услуг/реквизиты/сумма документа/свойства/точность=0
но это изменило все суммы в справочнике, а при печати сумма с копйеками осталась, как добиться именно чтобы было так при печати?
10. A.Sytchev 25.06.13 12:30 Сейчас в теме
(9) Kutnor, найдите это поле в макете, установите формат без копеек.
11. A.Sytchev 25.06.13 12:31 Сейчас в теме
(9) Kutnor, а вообще, я бы на вашем месте сделал немного иначе. Вдруг в дальнейшем копейки понадобятся? Я бы сделал подписку при записи документа, в котором вызывал сообщение: "Округлить?", если пользователь нажимает да, берем реквизит и откидываем копейки. Так и документ не тронем и задача будет выполняться.
alexovik; +1 Ответить
12. Kutnor 25.06.13 12:38 Сейчас в теме
(11) A.Sytchev, очень красиво звучит, вообще это идеальное решение, потому что иногда действительно копейки будут нужны если например отпускать товар в у.е.
Но как то сделать. Сказать то легко, помогите сделать, я не программист а админ, подскажите куда и что вписать. Буду очень благодарен.
13. Шапокляк 25.06.13 12:55 Сейчас в теме
Я добавила в ряд документов реквизит "Округлять копейки", прописала порядок его заполнения, и в общем модуле при расчете сумм строк на него ориентировалась. Это дело не 5 минут, конечно, да и УТ я не планирую обновлять штатными обновлениями. Вряд ли можно объяснить не программисту как все это сделать. Что касается варианта с подписками - а если программно перезаписывать документы, например, при перепроведении, вы представляете, как весело будет?
14. Kutnor 25.06.13 13:13 Сейчас в теме
(13) Шапокляк, я тоже не планирую обновлять УТ. Можно хоть на примере одного документа реализация показать, как и что делать, как вообще добавить реквизит "Округлять копейки"? я добавил в документы/реализация товаров/реквизиты/ дал наименование, что еще там нужно натсроить что писать в поле тип? число?, если Вы уже так сделали напишите пожалуйста как и что у Вас работает.Я не программист но голова на плечах есть, сам уже много чего реализовал в этой конфе.
15. Шапокляк 25.06.13 13:25 Сейчас в теме
Реквизит типа Булево. В заказе покупателя, в реализации, возврате от покупателя и в корректировке заказа покупателя. Соответственно, в реализацию при заполнении на основании он попадает из заказа. В заказе выведена кнопка в панели ТЧ Товары, при нажатии на которую копейки округляются или наоборот и перезаполняется реквизит Округлять копейки. Надпись на кнопке меняется и принимает значение "С копейками" и "Без копеек" - рюшечки в виде подсказки пользователю что будет, если он нажмет на кнопку.
вот примерно то, что на кнопке
Процедура ОкруглятьСкидкиПриИзменении(Элемент)
//Сообщить(ОкруглятьСкидки);
ОкруглятьКопейки= Не ОкруглятьКопейки;
ОкрСкидки=ОкруглятьКопейки;
Если ОкрСкидки Тогда
Парам=1;
Иначе
Парам=0;
Конецесли;
Для КАждого СтрокаТабличнойЧасти Из Товары Цикл
ОбработкаТабличныхЧастей.РассчитатьСуммуТабЧасти(СтрокаТабличнойЧасти, ЭтотОбъект,,Парам);
ОбработкаТабличныхЧастей.РассчитатьСуммуНДСТабЧасти(СтрокаТабличнойЧасти,ЭтотОбъект);
КонецЦикла;

КонецПроцедуры

в общий модуль в процедуру ОбработкаТабличныхЧастей.РассчитатьСуммуТабЧасти(СтрокаТабличнойЧасти, ЭтотОбъект,,Парам); добавлен последний параметр, который обрабатывается следующим образом:

Процедура РассчитатьСуммуТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект, СпособРасчета = Неопределено,ЧекККМ=0) Экспорт
МетаданныеДокумента = ДокументОбъект.Метаданные();
//Округлять копейки
Если ОбщегоНазначения.ЕстьРеквизитДокумента("ОкруглятьКопейки", МетаданныеДокумента) Тогда
ЧекККМ=Макс(ЧекККМ,ДокументОбъект.ОкруглятьКопейки);
КонецЕсли;


ИмяТабличнойЧасти = ОбщегоНазначения.ПолучитьИмяТабличнойЧастиПоСсылкеНаСтроку(СтрокаТабличнойЧасти);

МетаданныеДокумента = ДокументОбъект.Метаданные();

Сумма = СтрокаТабличнойЧасти.Цена * СтрокаТабличнойЧасти.Количество;
СуммаСкидки = 0;

Если (СпособРасчета = Неопределено)
Или (СпособРасчета = Перечисления.СпособРасчетаСуммыДокумента.СУчетомВсехСкидок)
Или (СпособРасчета = Перечисления.СпособРасчетаСуммыДокумента.БезУчетаРучнойСкидки) Тогда
Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("ПроцентАвтоматическихСкидок", МетаданныеДокумента,
ИмяТабличнойЧасти) Тогда
СуммаСкидки = Сумма * СтрокаТабличнойЧасти.ПроцентАвтоматическихСкидок / 100;
КонецЕсли;

Если (СпособРасчета <> Перечисления.СпособРасчетаСуммыДокумента.БезУчетаРучнойСкидки)Тогда
Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("ПроцентСкидкиНаценки", МетаданныеДокумента, ИмяТабличнойЧасти) Тогда
Если ЧекККМ=0 Тогда
СуммаСкидки = СуммаСкидки + (Сумма * СтрокаТабличнойЧасти.ПроцентСкидкиНаценки / 100);
Иначе
СуммаСкидки = ОКР(СуммаСкидки + (Сумма * СтрокаТабличнойЧасти.ПроцентСкидкиНаценки / 100),0);

Конецесли;
КонецЕсли;
КонецЕсли;
КонецЕсли;

СтрокаТабличнойЧасти.Сумма = Сумма - СуммаСкидки;

КонецПроцедуры // РассчитатьСуммуТабЧасти()

заранее прошу прощения за некоторую непричесанность кода.
79. levi25 2 02.07.18 15:58 Сейчас в теме
(15)Спасибо, очень помогли.
16. Kutnor 25.06.13 13:40 Сейчас в теме
Огромное Вам спасибо за помощь, мы заказы не делаем, мы тут же накладные, а из них на основании счет если нужен.
Значит мне нужно эту кнопку сделать в реализации.
1)Я добавил реквизит ОкруглятьКопейки с типом Булево, больше ничего не менял. Или нужно еще там поставить формат точность = 0? Или еще чего нужно менять?
2)Куда вставить выше приведенный код? в существующий модуль? Или нужно сделать новый? Помогите пожалуйста пошагово разьясните, очень нужная функция, в интернете много кто сталкивался с этой проблемой так и не решив ее. Я думаю многим будет полезна Ваша инструкция. Заранее спасибо.
17. Шапокляк 25.06.13 14:06 Сейчас в теме
Я даже не знаю, что еще конкретизировать? Реквизит в документ, кнопку в форму. Если тип Булево, то какая там точность? Поиграйтесь с кнопкой, чтоб она меняла реквизит, а в зависимости от реквизита организуйте по-разному пересчет в общем модуле суммы в строке документа.
18. A.Sytchev 25.06.13 14:17 Сейчас в теме
(17) Шапокляк, я правильно понял: для того чтобы округлить копейки в документе вы предлагаете типовой модуль править? Делать нужно через подписку, если не нравится выскакивающее сообщение - добавить либо доп. реквизит "Округлять" - это чтобы совсем красиво, либо просто реквизит и флаг на форму.
20. Kutnor 25.06.13 14:34 Сейчас в теме
(17) Шапокляк, так хорошо, давайте по порядку:
1) кнопку создал в форме документа и дал имя ДействиеОкруглитьКопейки, что нужно ставить в поле действие?
2) реквизит ОкруглятьКопейки тоже создал, тип Булево.
3) куда вставлять выше приведенный код?
4) что делать дальше?
19. Шапокляк 25.06.13 14:30 Сейчас в теме
А что, типовой модуль это Святой Грааль какой-то? В конце концов, если не хотите типовой править - свой сделайте и переопределите нужные процедуры, чтобы они его использовали. Куча вариантов и без этого: 1 - реквизит либо допреквизит документа и обрабатывайте редактирование строки как вам нужно, как быть с программным перезаполнением, если такое будет - сами решайте; 2- подписка и все равно - реквизит либо допреквизит документа, в этом случае надо смириться с тем, что при записи документа сумма несколько поменяется.
21. Kutnor 25.06.13 16:56 Сейчас в теме
напишите хоть где править типовую конфигурацию чтобы округление было постоянное, с кнопкой помочь никто не может.
22. caponid 25.06.13 17:16 Сейчас в теме
в стандартных конфигурациях округлять до какого то предела можно только в ценах.

если это расходная накладная и цены берутся из установки цен, тогда для этого типа цен установить нужное округление.

и для суммы документа - в установке реквизита суммы документа (обычно это в модуле документа при записи или перед записью) оькруглить до целых а остаток вычесть с последней строки ТЧ или раскидать по суммам ТЧ
23. Kutnor 25.06.13 17:32 Сейчас в теме
я писал Выше что цены откругляються до рубля, но при скидке опять получаются копейки,в ТИС 7.7 ред. 9.2 это делали в ручную изменяли копейки в какой либо позиции и проблем не было. сейчас допусти есть в накладной 3 товара:
1 по 389 р. кол-во 82
2 по 670 р. кол-во 56
3 по 500 р. кол-во 22
скидка 5%
в итоге сумма получается 78 197,52 р.
округляю до ноля выходит 98 и ничего тут не поделать, так вот как в такой ситуации округялть до рубля?
24. caponid 25.06.13 17:40 Сейчас в теме
так надо просто отбросить дробную часть?
25. Kutnor 26.06.13 09:23 Сейчас в теме
где отбросить? я уже все перерыл найти не могу.
26. lamelioss 143 26.06.13 09:54 Сейчас в теме
На вывод суммы поставь форматную строку и не ешь себе голову.
// СуммаДокумента = Формат(СуммаДокумента, ЧЦ = 15)
27. Kutnor 26.06.13 10:03 Сейчас в теме
Так вот Вы все пишите это поставь, или это. Где поставить? В каком файле править? Я не программист 1С я только учусь. И что мне даст ЧЦ = 15 сумма документа 15 цифр? мне кажеться проще поставть ЧДЦ = 0, но где это поставить? в каком файле, в документа/реализация/сумма документа пробовал править, не получаеться. И опять таки делательно чтобы не просто отнимались копейки а округлялись. Где это все менять, какой файл за это отвечает?
29. Sevens 6 26.06.13 10:22 Сейчас в теме
(27) Kutnor,
1. Я думаю, что если вы только учитесь, то сначала надо бы выучить основу программирования на 1С, есть хорошие видео-курсы/книги, иначе вы не поймете что вам тут советуют.
2. Тут не совсем понятно что имеется ввиду под округлением до рубля? математическое округление, в большую сторону или просто отбросить копейки?
3. Не совсем понятно для чего? только для печатной формы или же что б документ хранил округленную сумму?
31. Kutnor 26.06.13 10:29 Сейчас в теме
(29) Sevens, 1) ну я не планирую дальше заниматься 1С вплотную. Поэтому зачем мне учить основы програмирования 1С.
Мне просто нужно решить даную задачу.
2) округление желательно математическое, от есть 51 копейка это рубль, а 49 копеек это 0 рублей.
3) вообще нужно для того чтобы клиенту отсылался счет без копеек и чтобы потом в бухгалтерии проблем не было.
поскольку счет мы копируем из реализации то я и прошу сделать реализацию.
Можно конечно просто в печатной форме убрать копейки. Но в каком файле это сделать?
4)Если у Вас есть вариант лучший подскажите Ваш вариант.
32. Kutnor 26.06.13 10:31 Сейчас в теме
(29) Sevens, Вообще конечно идеальный вариант предложила Шапокляк, сделать кнопку округления копеек. Даже код написала, а куда его вставлять не написала.
28. vnagapov 26.06.13 10:17 Сейчас в теме
Функция Формат обычно используют для отображения данных в нужном формате. В данном случае при выводе данных в печатную форму.
30. Kutnor 26.06.13 10:22 Сейчас в теме
я знаю про функцию формат, в каком файле это применить?
33. ant1773 5 26.06.13 11:15 Сейчас в теме
(30) Kutnor,

Это нужно сделать не в файле, а в конфигурации.

(31) Kutnor,

У меня ответ сразу на все вопросы: обратитесь к франчу, или к кому-то из форумян. За очень небольшие деньги - решат Вашу проблему. В силу отсутствия базовых понятий - Вы задаете вопросы, которые сбивают с толку людей, которые пытаются Вам помочь.
34. Kutnor 26.06.13 11:28 Сейчас в теме
я может не правильно выразился, я и имею ввиду конфигурацию, в конфигурации есть иерархия, ну там папки/подпапки, где есть модули и документы, там реквизиты и прочее. так вот где что поменять, может кто нибудь подсказать где копать в этой иерархии.
Я сам без опыта собрал сервер,настроил его, перекинул всю информацию из 7.7 на 8.2 а тут за такой мелочью как убрать копейки я буду к программситу обращаться? Я вообще удивляюсь почему 1С это не сделала в типовой конфигурации, почему все через одно место.
35. ant1773 5 26.06.13 12:10 Сейчас в теме
(34) Kutnor,

ИМХО - Вам стоит определиться:

1) ну я не планирую дальше заниматься 1С вплотную. Поэтому зачем мне учить основы програмирования 1С.

или
Я сам без опыта собрал сервер,настроил его, перекинул всю информацию из 7.7 на 8.2 а тут за такой мелочью как убрать копейки я буду к программситу обращаться?


Если Вы хотите, чтобы Вам дали готовый код и ткнули пальцем куда его вставить - доставайте кошелек.
Если Вы хотите делать сами, доставайте книгу.

>может кто нибудь подсказать где копать в этой иерархии.

Копать нужно в процедуре подсчета итоговой суммы документа.
36. Kutnor 26.06.13 12:19 Сейчас в теме
Ясно спасибо, мне тут значит никто не поможет. Я понимаю что программистам тоже питаться нужно, но я ради такой мелочи не буду никого нанимать, тем более что я сисадмин, а делаю все это для работы чтобы облегчить жизнь работникам.
37. ant1773 5 26.06.13 12:29 Сейчас в теме
(36) Kutnor,

Ясно спасибо, мне тут значит никто не поможет.


Почему? Может и помогут, но просто ИМХО - спрашивать больше, чем Вам уже разжевали - грех.

тем более что я сисадмин,

Я сам без опыта собрал сервер,настроил его, перекинул всю информацию из 7.7 на 8.2


Без опыта? Или сисадмин? Или на должности сисадмина, но опыта нет?
Тогда - Вы наверное и на должности программиста 1С. :)
38. Kutnor 26.06.13 12:47 Сейчас в теме
(37) ant1773, ну сисадмина нет, и мне приходиться выполнить его функции, так как я самый башкавитый в этой теме.
Я говорил что у меня не было опыта установки сервака, 1С 8.2 sql и настройки всей этой приблуды. Hаньше работали на 1С 7.7 файловой, было намного проще, но знаменитая проблема второго пользователя заставила нас перейти на 8.2
39. Sevens 6 26.06.13 13:25 Сейчас в теме
(36) Kutnor,
Ясно спасибо, мне тут значит никто не поможет.

Вам уже помогли:
1. Написали готовый рабочий код
2. Сказали куда его вставить
Это и так 70% того что должны были сделать вы.
Если вы не поняли, то это уже ваши проблемы, написано более чем детально.
А расписывать вам по кнопочкам, куда жать и что вставлять никто не будет. Это равносильно того, что 100% работы сделать за вас, а вы ведь за это деньги получаете ;)
При этом вы не туда вставите, не то нажмете, затрёте что-то случайно... в общем гиблое это дело.
И если у вас в штате нет 1С программиста, и вы не планируете никого нанимать, то вам рано или поздно придётся начать учить 1С, так как это будет не последняя просьба по доработке/разработке)
40. Kutnor 26.06.13 13:33 Сейчас в теме
как раз таки я 3 раза спрашивал куда вставлять этот код и мне так никто и не сказал. так что давайте не будем. Перечитайте выше. Зарплату я получаю за другое, 1С настраиваю так как больше некому и самому приходится каждый раз сталкиваться. Вот и приходится этим заниматься.
41. mymyka 26.06.13 13:44 Сейчас в теме
(40)Вы толком не можете объяснить что именно хотите. Каких конкретных рекомендаций вы ждете? Округлить сумму документа можно кучей различных способов, отличающихся глубиной внедрения в конфигурацию.
Первое что посоветовал бы - определиться с задачей: нужен именно учет без копеек или все таки вывод печатной формы с округлением?
Второе - написать 1000 раз "Я никогде не правлю типовую конфигурацию, если не понимаю что и зачем делаю", дабы отложилось на подкорке.
Третье - вернуть разрядность реквизита документа.
42. ant1773 5 26.06.13 13:45 Сейчас в теме
(40) Kutnor,

Таки Я Вам сказал - куда нужно вставить этот код:

Копать нужно в процедуре подсчета итоговой суммы документа.



Зарплату я получаю за другое, 1С настраиваю так как больше некому и самому приходится каждый раз сталкиваться. Вот и приходится этим заниматься.


Так и занимайтесь, никто же не против. Книжки только почитайте немного. 1С - очень простой язык, неделя-другая даст Вам основные понятия о метаданных, модулях форм/объектов/общих, обработках и регистрах... И нам будет проще помогать Вам и Вам будет проще заниматься не своей работой.
43. Kutnor 26.06.13 13:49 Сейчас в теме
(42) ant1773, ладно я надеялся что мне точно скажут куда вставлять, а не где копать. спасибо всем за помощь, книжки сейчас учить некогда уезжаю в отпуск, вот и хотел все настроить, чтобы без меня не мучались менеджеры с этими копейками.
(41) mymyka, Что Вам не понятно то? уже сто раз писал, нужно убрать копейки, хотел как лучше, теперь уже хоть как либо.
44. mymyka 26.06.13 13:57 Сейчас в теме
(43)убрать копейки ГДЕ? В форме документа, в процедуре расчета суммы или печатной форме? Это три разные вещи. По-этому вам и советуют изучить хотя бы основы. Вы толком задачу поставить не можете, какое может быть готовое решение?
45. Kutnor 26.06.13 14:02 Сейчас в теме
вообще идеально в процедуре расчета, если не получиться то в форме документа, если и это не получиться то уже просто в печатной форме. Я это писал Выше.
46. mymyka 26.06.13 15:25 Сейчас в теме
У документа реализация товаров и услуг нет печатной формы "счет". Соответственно это внешная ПФ. Ищите ее в Сервис - Доп.печатные формы. Открывайте макет и смотрите как называется ваш параметр, в который выводится сумма. Ищите его упоминание в модуле в функции Печать() и рисуйте свое округление.
47. yura_ua88 26.06.13 15:33 Сейчас в теме
Посмотри процедуре подсчета суммы документа.
48. Kutnor 27.06.13 11:44 Сейчас в теме
Все было настолько просто, а подзказать никто так и не смог:
Нужно было просто зайти в конфигурацию/документы/реализация товаров и услуг/табличной части/товары/сумма
и там изменить точность на 0.
ВСЕ.
При этом в накладной все округляеться, а не просто удаляються копейки.
единственный минус, это если я захочу сделать накладную в долларах то ее тоже нужно будет округлять до доллара, что не очень выгодно.
надеюсь кому то пригодиться мое решение в будующем.
49. ant1773 5 27.06.13 11:58 Сейчас в теме
(48) Kutnor,

Нда... Жесть... Боюсь подумать, что Вы сделаете, если скидку нужно будет округлить до 100 рублей...
А есть нужно сделать 499.99? :)

Это не решение.

ЗЫ Вы осознаете, что с таким методом копейки невозможно использовать в дальнейшем?

ЗЗЫ А осознаете, что грохнули копейки и в старых документах?
lamelioss; +1 Ответить
50. Kutnor 27.06.13 12:03 Сейчас в теме
(49) ant1773, а зачем скидку до 100 рублей округлять? и зачем делать 499.99
Нам бухгалтера сказали что Все оплаты проходили без копеек. Вот я их и убрал,единственный минус как я уже писал это с долларом, округлить 30 рублей многовато.
58. ant1773 5 27.06.13 12:18 Сейчас в теме
(50) Kutnor,

ant1773, а зачем скидку до 100 рублей округлять?


А вот завтра скажут. :)

и зачем делать 499.99


Никогда не видели в магазине таких ценников? Я уже на автомате, все что 90+ стоит округляю до 100.

Нам бухгалтера сказали что Все оплаты проходили без копеек.


Я бы все таки рекомендовал посверять отчеты... И проверить наличие архива, с неубитыми копейками.

Вот я их и убрал,единственный минус как я уже писал это с долларом, округлить 30 рублей многовато.


Ох не единственный это минус, не единственный...

(51) Kutnor,

Может кто подскажет если я сделаю кнопку в документе, как ее подключить к такой функции чтобы при нажатии на нее точность округлялась с 2 до 0 ?


В процедуре нажатия кнопки - прописать цикл прохода по всем строкам ТЧ, с округлением. В (15) в принципе код описан, только там больше возможностей...

ЗЫ Как говорится - Вы сделали мне этот день...
lamelioss; +1 Ответить
61. lamelioss 143 27.06.13 12:20 Сейчас в теме
(58) ant1773, ну да, я тоже оживился)))
52. lamelioss 143 27.06.13 12:12 Сейчас в теме
(48) Kutnor, это немного ненормальное решение, поскольку нужно как то будет сдавать отчетность, можете поймать расхождение с данными отчетности и документами, в частности не пойдет НДС
53. Kutnor 27.06.13 12:14 Сейчас в теме
(52) lamelioss, НДС нет, с отчетностью проблем не должно быть, бухгалтера там сами что то подставляют, главное их требование это чтобы не было копеек. Лучше подскажите как сделать эту функцию с кнопки.
57. lamelioss 143 27.06.13 12:17 Сейчас в теме
(53) Kutnor, да без проблем. В форме ставите кнопку - на нее вешаем процедуру. Получаешь значение реквизита сумма документа, или что там надо, если по всем товарам, то запросом к табличной части, и округляем. Все!
60. Kutnor 27.06.13 12:19 Сейчас в теме
(57) lamelioss, подскажите пожалуйста подробнее что и куда вставлять, я не программист 1с мне очень сложно понять, очень прошу помочь разжевать.
62. lamelioss 143 27.06.13 12:22 Сейчас в теме
(60) Kutnor, окей )
конфигуратор - документы - &НужныйДокумент - формы- формадокумента. открываем. Сверху есть меню Форма - вставить элемент управления - кнопка. два раза на нее тыкаем, открывается процедура. туда пишем код по аналогии с 15 постом и округляем что надо
55. Kutnor 27.06.13 12:16 Сейчас в теме
(52) lamelioss, а иначе копейки никак не убрать, маленькое расхождение это плата за копейки, иначе просто арифметически не получаеться округлить.
51. Kutnor 27.06.13 12:03 Сейчас в теме
Может кто подскажет если я сделаю кнопку в документе, как ее подключить к такой функции чтобы при нажатии на нее точность округлялась с 2 до 0 ?
54. lamelioss 143 27.06.13 12:15 Сейчас в теме
(51) Kutnor, пойми, то, что ты делаешь - неадекват! Когда нет возможности осознать, что ты сделал, это печально.
Если бухам надо чтобы на печать выводилось красиво - пожалуйста, если им надо, чтобы в самом документе были целые числа - пожалуйста. А Ваш замечательный трюк поставил раком весь учет за предыдущие периоды
56. Kutnor 27.06.13 12:16 Сейчас в теме
(54) lamelioss, читай 53, я знаю что делаю, мне ка краз это и нужно.
59. lamelioss 143 27.06.13 12:19 Сейчас в теме
(56) Kutnor, или код написать?
63. Kutnor 27.06.13 12:22 Сейчас в теме
в 15 посте я не понял куда что вставлять. Если есть время у Вас разжуйте мне глупому а?
64. lamelioss 143 27.06.13 12:27 Сейчас в теме
(63) Kutnor,
Процедура какаято ()
Табтовар = ЭтотОбъект.товары; // таблица с данными
Для каждого строка из Табтовар цикл
Строка.Цена = Окр(Строка.Цена);
Строка.Сумма = Окр(Строка.Сумма);

КонецЦикла;




КонецПроцедуры
65. Kutnor 27.06.13 12:29 Сейчас в теме
теперь понятнее, я вставил тот код из 15 поста.Только боюсь он не подойдет, там она еще реквизит добавляла, а мне тоже нужно его добавить? Или другой код вставить, помогите теперь с кодом, чтобы тупо делал точность 0
66. Kutnor 27.06.13 12:36 Сейчас в теме
убрал то что сам делал, вставил реквизит, втавил кнопку, вставил в кнопку код, теперь выходит такая ошибка при сохранении:
{Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента.Форма(3729,2)}: Ожидается ключевое слово 'КонецПроцедуры' ('EndProcedure')
<<?>>Процедура ОкруглятьСкидкиПриИзменении(Элемент) (Проверка: Толстый клиент (обычное приложение))
{Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента.Форма(3745,3)}: Неопознанный оператор
в <<?>>общий модуль в процедуру ОбработкаТабличныхЧастей.РассчитатьСуммуТабЧасти(СтрокаТабличнойЧасти, ЭтотОбъект,,Парам); добавлен последний параметр, который обрабатывается следующим образом: (Проверка: Толстый клиент (обычное приложение))
{Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента.Форма(3745,128)}: Неопознанный оператор
в общий модуль в процедуру ОбработкаТабличныхЧастей.РассчитатьСуммуТабЧасти(СтрокаТабличнойЧасти, ЭтотОбъект,,Парам); добавлен <<?>>последний параметр, который обрабатывается следующим образом: (Проверка: Толстый клиент (обычное приложение))
{Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента.Форма(3747,1)}: Определения процедур и функций должны размещаться перед операторами тела модуля
<<?>>Процедура РассчитатьСуммуТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект, СпособРасчета = Неопределено,ЧекККМ=0) Экспорт (Проверка: Толстый клиент (обычное приложение))
67. lamelioss 143 27.06.13 12:37 Сейчас в теме
(66) Kutnor, предыдущим сообщением написал тебе весь код
68. Kutnor 27.06.13 12:39 Сейчас в теме
у меня вот это вначале:
Процедура Кнопка1Нажатие(Элемент)
Процедура ОкруглятьСкидкиПриИзменении(Элемент)


и вот это в конце вышло:
КонецПроцедуры // РассчитатьСуммуТабЧасти()
КонецПроцедуры


по 2 раза, это правильно?
69. Kutnor 27.06.13 12:40 Сейчас в теме
Процедура какаято () это правильный код? или мне нужно подставить что то туда?
70. lamelioss 143 27.06.13 12:43 Сейчас в теме
(69) Kutnor,
я не в курсе, как твои реквизиты и таблицы называются! Я не телепат! Есть функция Окр(), это округление. Берешь таблицу свою, проходишь ее до конца и все округляешь. В чем еще то вопросы???


Процедура Кнопка1Нажатие(Элемент)
Табтовар = ЭтотОбъект.товары; // таблица с данными
Для каждого строка из Табтовар цикл
Строка.Цена = Окр(Строка.Цена);
Строка.Сумма = Окр(Строка.Сумма);
КонецЦикла;
КонецПроцедуры
71. Kutnor 27.06.13 12:43 Сейчас в теме
если Вы говорите что тот код правильнее из 15 поста, может его доделать проще?
72. lamelioss 143 27.06.13 12:47 Сейчас в теме
(71) Kutnor, да похер, как ты будешь округлять! Грохнуть сам реквизит значит сделать реструктуризацию всей базы и нагнуть учет за все время. округлить значение в таблице - пожалуйста. почитай книжку хоть маленько и напиши код. профит!
73. Kutnor 27.06.13 12:53 Сейчас в теме
Учить некогда, через 3 дня уезжаю в отпуск, а без меня тут люди будут мучаться.
нагнуть учет за все время не страшно, учет только начали, я добавил реквизит ОкруглятьКопейки с типом булево. вставил код в кнопку Кнопка1 из 15 ответа, вышли ошибки, как их исправить? код который там лучше по функциональности.
Я знаю что всех уже достал, но все же помогите, очень прошу.
74. lamelioss 143 27.06.13 12:59 Сейчас в теме
(73) Kutnor, это ж как ты определил, что тот код лучше по функциональности? если ты не понимаешь сам, что делаешь? а потратить 2 часа, чтобы осознать основные механизмы платформы это не так долго. ты на ветке форума дольше сидишь
Kabalina; ant1773; Sevens; +3 Ответить
75. ant1773 5 27.06.13 13:01 Сейчас в теме
(73) Kutnor,

Общепринятых варианта сделать два:
1. Отдать пятьсот рублей и конфигурацию любому отписавшемуся в теме, через час получить измененную конфигурацию.
2. Имея хотя бы общее представление о том, что, где и каким образом нужно сделать - задавать вопросы. Никто не знает всего.

Но Вы пользуетесь третьим (как Я понял - Вы не понимаете программирования вообще? Не только 1С?) - добиваете людей чтобы Вам написали полностью код и расписали с картинками куда же его нужно вставить... ИМХО - это перебор.
Kabalina; lamelioss; +2 Ответить
76. Kutnor 27.06.13 13:08 Сейчас в теме
в любом случае всем спасибо, Андрей Вам особенно, буду пробовать что нибудь сделать.
77. Kutnor 27.06.13 15:21 Сейчас в теме
lamelioss все с Вашим кодом получилось, еще раз огромное спасибо.
78. Angelok 5 17.07.13 16:43 Сейчас в теме
Рекомендуется написать обработку по технологии заполнения табличных частей документов, которая бы округляла бы суммы в документе и пересчитывала бы НДС. У этого метода есть недостаток - при изменении числовых данных в табличной части, обработку производить повторно.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот