Версия для печати темы (https://pro1c.org.ua/index.php?s=e0cb56e8e50a6a642ef867f8f5b0e35b&showtopic=8279)
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование обычных форм 1С 8.2 и не интерфейсной логики _ Проблема разрядности числа
Автор: kartman_ds 24.07.12, 12:15
Здравствуйте. Имею 1с Предприятие 8,2 конфа Бухгалтерия Украины, редакция 1,2 (1.2.6.5).
Проблема в следующем... Из счета на оплату покупателя вызываем обработку подбор номенклатуры, выбираем нужный тип цен и вид номенклатуры, выбираем нужную номенклатуру, открывается обработка количество и цена, ставим нужные параметры и нажимаем ОК. И тут проблема цена возвращается в счет с разрядностью в 2 знака после запятой, а мне нужно с 3. Подскажите где мне найти настройку разрядности для данного действия.
! |
| Картинка удалена. Почему? Прочтите правила!
|
Автор: logist 24.07.12, 13:02
Цитата(kartman_ds @ 24.07.12, 13:15)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Подскажите где мне найти настройку разрядности для данного действия.
Нет никакой настройки разрядности. Для этого нужно дорабатывать конфигурацию.
Автор: kartman_ds 24.07.12, 13:16
Да вы мне Америку открыли блин, я тему и создал в разделе программирование в 1с, мне нужна помощь в поиске определенной процедуры, в которой и стоит значение разрядности. По типу функции формата сумм, в модуле общего назначения (ФорматнаяСтрока = "ЧЦ=15;ЧДЦ=3"). Спасибо модератору за перенос темы совсем в не подходящий раздел!!!
Автор: Vofka 24.07.12, 13:46
Цитата(kartman_ds @ 24.07.12, 14:16)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Спасибо модератору за перенос темы совсем в не подходящий раздел!!!
Просто танкисты правила не читают, поэтому модератор методом телепатического моделирования определет принадлежность темы какому-то разделу. Результат не гарантирует 100%-ную точность.
Это только мне читается в буквах ТС-а интонация, будто ему здесь кто-то что-то должен?
Автор: logist 24.07.12, 14:25
Цитата(kartman_ds @ 24.07.12, 14:16)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
мне нужна помощь в поиске определенной процедуры, в которой и стоит значение разрядности.
Отладчик Вам в помощь.
Автор: kartman_ds 24.07.12, 15:30
Цитата(logist @ 24.07.12, 15:25)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Отладчик Вам в помощь.
Не пойму чем мне может помочь отладчик в данной ситуации... Процедуры в модулях формы и в модуле обработки я нашел, но в них нет ограничения разрядности. Мне нужно функция которая ограничивает разрядность числа при добавлении его с обработки (именно цены). По логике вещей оно должно быть где-то в общих модулях... Подскажите хоть в какую сторону копать
![sad.gif](https://pro1c.org.ua/style_emoticons/default/sad.gif)
. Последний штрих остался доделать
![sad.gif](https://pro1c.org.ua/style_emoticons/default/sad.gif)
.
Автор: python 24.07.12, 15:54
Цитата(kartman_ds @ 24.07.12, 16:30)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Не пойму чем мне может помочь отладчик в данной ситуации... Процедуры в модулях формы и в модуле обработки я нашел, но в них нет ограничения разрядности. Мне нужно функция которая ограничивает разрядность числа при добавлении его с обработки (именно цены). По логике вещей оно должно быть где-то в общих модулях... Подскажите хоть в какую сторону копать
![sad.gif](https://pro1c.org.ua/style_emoticons/default/sad.gif)
. Последний штрих остался доделать
![sad.gif](https://pro1c.org.ua/style_emoticons/default/sad.gif)
.
А разрядность реквизита документа точно та, которую хотелось бы видеть?
Автор: kartman_ds 24.07.12, 15:59
Да, так как если добавляю товар в счет на оплату покупателя через справочник номенклатура, то цена сама добавляться уже с 3 знаками после запятой с регистра цен, а вот именно обработка ее срезает опять до 2 знаков, на скрине выше это хорошо заметно!
Автор: python 24.07.12, 16:37
Цитата(kartman_ds @ 24.07.12, 16:59)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Да, так как если добавляю товар в счет на оплату покупателя через справочник номенклатура, то цена сама добавляться уже с 3 знаками после запятой с регистра цен, а вот именно обработка ее срезает опять до 2 знаков, на скрине выше это хорошо заметно!
Тогда - отладчик в помощь, и смотреть - где значение переменной округляется.
Автор: logist 24.07.12, 18:21
Цитата(kartman_ds @ 24.07.12, 16:30)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Процедуры в модулях формы и в модуле обработки я нашел, но в них нет ограничения разрядности. Мне нужно функция которая ограничивает разрядность числа при добавлении его с обработки (именно цены). По логике вещей оно должно быть где-то в общих модулях...
Отладчик бы вам помог найти эту конкретную функцию в конкретном общем модуле. Потому как процедура которая выполняет вызов округления находится в модуле формы документа (счета, в вашем случае).
Но проблема у Вас будет несколько в другом, общая функция которая выполняет округление используется в конфигурации еще в 177 местах, поэтому исправлять именно ее вероятно не стоит.
Автор: Ardi 24.07.12, 19:03
ОкруглитьСУчетомПогрешности
Автор: logist 24.07.12, 20:06
Цитата(Ardi @ 24.07.12, 20:03)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
ОкруглитьСУчетомПогрешности
Плохая подсказка, т.к. в эту функцию уже передается точность округления "2" при условии что цена требует пересчет из валюты в валюту.
Автор: Ardi 24.07.12, 21:24
ну так передавать 3.
Автор: kartman_ds 25.07.12, 8:47
Всем спасибо за советы, у меня получилось, действительно отладчик помог. Как я сразу до этого не допер... Проблема была в "функция пересчитывает сумму из валюты ВалютаНач по курсу ПоКурсуНач" в строке "Возврат ОбщегоНазначения.ОкруглитьСУчетомПогрешности(НоваяСумма, 3, Погрешность, СоответствиеПогрешностей, Ключ);" стояло 2, сменил на 3 и все гудт заработало. Еще раз спасибо все тем, кто помогал советами в теме
!
Автор: logist 25.07.12, 9:50
Цитата(Ardi @ 24.07.12, 22:24)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
ну так передавать 3.
Главное что бы это не повлияло на вызовы этой функции из других мест. Вдруг в каком-то другом документе необходимо округление именно до 2-х знаков. Вобщем я бы поступил более сложным путем
Автор: kartman_ds 25.07.12, 15:38
Цитата(logist @ 25.07.12, 10:50)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Главное что бы это не повлияло на вызовы этой функции из других мест. Вдруг в каком-то другом документе необходимо округление именно до 2-х знаков. Вобщем я бы поступил более сложным путем smile.gif
Округление я в конфе не трогал вообще, только разрядность, да и не было нужны копаться в округлении, так как с ним все норм. А нужно мне это исключительно для валютных счетов выписываемых менеджерами. Остальное в системе все работает по умолчанию с 2 знаками, тестил уже пока без всяких сюрпризов
![smile.gif](https://pro1c.org.ua/style_emoticons/default/smile.gif)
. Ну, могли бы продолжить мысль, будет очень интересно услышать ваше мнение на решение данной проблемы
![smile.gif](https://pro1c.org.ua/style_emoticons/default/smile.gif)
.
Автор: MATEVI 25.07.12, 19:16
Цитата(kartman_ds @ 25.07.12, 16:38)
![*](http://pro1c.org.ua/style_images/pro1c/post_snapback.gif)
Округление я в конфе не трогал вообще...
![smile.gif](https://pro1c.org.ua/style_emoticons/default/smile.gif)
Конфигуратор. Правка - глобальный поиск - (Искать) - ОбщегоНазначения.ОкруглитьСУчетомПогрешности. Я думаю дальше поймете
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua