Версия для печати темы (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) *
Подскажите где мне найти настройку разрядности для данного действия.

Нет никакой настройки разрядности. Для этого нужно дорабатывать конфигурацию.

Автор: kartman_ds 24.07.12, 13:16

Да вы мне Америку открыли блин, я тему и создал в разделе программирование в 1с, мне нужна помощь в поиске определенной процедуры, в которой и стоит значение разрядности. По типу функции формата сумм, в модуле общего назначения (ФорматнаяСтрока = "ЧЦ=15;ЧДЦ=3"). Спасибо модератору за перенос темы совсем в не подходящий раздел!!!




Автор: Vofka 24.07.12, 13:46

Цитата(kartman_ds @ 24.07.12, 14:16) *
Спасибо модератору за перенос темы совсем в не подходящий раздел!!!

Просто танкисты правила не читают, поэтому модератор методом телепатического моделирования определет принадлежность темы какому-то разделу. Результат не гарантирует 100%-ную точность.

Это только мне читается в буквах ТС-а интонация, будто ему здесь кто-то что-то должен?

Автор: logist 24.07.12, 14:25

Цитата(kartman_ds @ 24.07.12, 14:16) *
мне нужна помощь в поиске определенной процедуры, в которой и стоит значение разрядности.

Отладчик Вам в помощь.

Автор: kartman_ds 24.07.12, 15:30

Цитата(logist @ 24.07.12, 15:25) *
Отладчик Вам в помощь.


Не пойму чем мне может помочь отладчик в данной ситуации... Процедуры в модулях формы и в модуле обработки я нашел, но в них нет ограничения разрядности. Мне нужно функция которая ограничивает разрядность числа при добавлении его с обработки (именно цены). По логике вещей оно должно быть где-то в общих модулях... Подскажите хоть в какую сторону копать sad.gif. Последний штрих остался доделать sad.gif.

Автор: python 24.07.12, 15:54

Цитата(kartman_ds @ 24.07.12, 16:30) *
Не пойму чем мне может помочь отладчик в данной ситуации... Процедуры в модулях формы и в модуле обработки я нашел, но в них нет ограничения разрядности. Мне нужно функция которая ограничивает разрядность числа при добавлении его с обработки (именно цены). По логике вещей оно должно быть где-то в общих модулях... Подскажите хоть в какую сторону копать sad.gif. Последний штрих остался доделать sad.gif.

А разрядность реквизита документа точно та, которую хотелось бы видеть?

Автор: kartman_ds 24.07.12, 15:59

Да, так как если добавляю товар в счет на оплату покупателя через справочник номенклатура, то цена сама добавляться уже с 3 знаками после запятой с регистра цен, а вот именно обработка ее срезает опять до 2 знаков, на скрине выше это хорошо заметно!

Автор: python 24.07.12, 16:37

Цитата(kartman_ds @ 24.07.12, 16:59) *
Да, так как если добавляю товар в счет на оплату покупателя через справочник номенклатура, то цена сама добавляться уже с 3 знаками после запятой с регистра цен, а вот именно обработка ее срезает опять до 2 знаков, на скрине выше это хорошо заметно!

Тогда - отладчик в помощь, и смотреть - где значение переменной округляется.

Автор: logist 24.07.12, 18:21

Цитата(kartman_ds @ 24.07.12, 16:30) *
Процедуры в модулях формы и в модуле обработки я нашел, но в них нет ограничения разрядности. Мне нужно функция которая ограничивает разрядность числа при добавлении его с обработки (именно цены). По логике вещей оно должно быть где-то в общих модулях...

Отладчик бы вам помог найти эту конкретную функцию в конкретном общем модуле. Потому как процедура которая выполняет вызов округления находится в модуле формы документа (счета, в вашем случае).
Но проблема у Вас будет несколько в другом, общая функция которая выполняет округление используется в конфигурации еще в 177 местах, поэтому исправлять именно ее вероятно не стоит.

Автор: Ardi 24.07.12, 19:03

ОкруглитьСУчетомПогрешности

Автор: logist 24.07.12, 20:06

Цитата(Ardi @ 24.07.12, 20:03) *
ОкруглитьСУчетомПогрешности

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

Автор: Ardi 24.07.12, 21:24

ну так передавать 3.

Автор: kartman_ds 25.07.12, 8:47

Всем спасибо за советы, у меня получилось, действительно отладчик помог. Как я сразу до этого не допер... Проблема была в "функция пересчитывает сумму из валюты ВалютаНач по курсу ПоКурсуНач" в строке "Возврат ОбщегоНазначения.ОкруглитьСУчетомПогрешности(НоваяСумма, 3, Погрешность, СоответствиеПогрешностей, Ключ);" стояло 2, сменил на 3 и все гудт заработало. Еще раз спасибо все тем, кто помогал советами в теме smile.gif!

Автор: logist 25.07.12, 9:50

Цитата(Ardi @ 24.07.12, 22:24) *
ну так передавать 3.

Главное что бы это не повлияло на вызовы этой функции из других мест. Вдруг в каком-то другом документе необходимо округление именно до 2-х знаков. Вобщем я бы поступил более сложным путем smile.gif

Автор: kartman_ds 25.07.12, 15:38

Цитата(logist @ 25.07.12, 10:50) *
Главное что бы это не повлияло на вызовы этой функции из других мест. Вдруг в каком-то другом документе необходимо округление именно до 2-х знаков. Вобщем я бы поступил более сложным путем smile.gif


Округление я в конфе не трогал вообще, только разрядность, да и не было нужны копаться в округлении, так как с ним все норм. А нужно мне это исключительно для валютных счетов выписываемых менеджерами. Остальное в системе все работает по умолчанию с 2 знаками, тестил уже пока без всяких сюрпризов smile.gif. Ну, могли бы продолжить мысль, будет очень интересно услышать ваше мнение на решение данной проблемы smile.gif.

Автор: MATEVI 25.07.12, 19:16

Цитата(kartman_ds @ 25.07.12, 16:38) *
Округление я в конфе не трогал вообще...

smile.gif Конфигуратор. Правка - глобальный поиск - (Искать) - ОбщегоНазначения.ОкруглитьСУчетомПогрешности. Я думаю дальше поймете wink.gif

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua