Имя: Пароль:
1C
1С v8
Катастрофа с 4 знаками в количестве в УТ!
0 Мисти
 
17.12.13
23:34
Какая-то совершенно непонятная засада.
Доп. реквизит номенклатуры - толщина. Был определен формат - 3 знака после запятой, теперь сделали 4, вывели на форму номенклатуры, выглядит, будто 4 знака, но при попытке заполнения - округляет и последним знаком рисует ноль.
Где рыть??
1 Klesk666
 
17.12.13
23:36
Вас же предупреждали (с)
2 Мисти
 
17.12.13
23:39
Ну не может же это быть системным ограничением!!
3 Толич
 
17.12.13
23:41
Это не системное ограничение.
4 mikecool
 
17.12.13
23:42
(0) формат поля проверь
5 mikecool
 
17.12.13
23:42
+4 на форме
6 Мисти
 
17.12.13
23:45
(3) Уже хорошо!
На форме - это ж доп. реквизит! Его не видать в конфигураторе, а в базе выглядит красиво - с 4 знаками, но четвертый - ноль.
А!!!
7 mikecool
 
17.12.13
23:46
(6) чо? А? А? А?
послушай как тетка звонит в м-видео )
8 Мисти
 
17.12.13
23:53
Выражение    Значение    Тип
ОписаниеСвойств    ТаблицаЗначений    ТаблицаЗначений
ТипЗначенияСвойства    Число    ОписаниеТипов
КвалификаторыДаты    КвалификаторыДаты    КвалификаторыДаты
КвалификаторыДвоичныхДанных    КвалификаторыДвоичныхДанных    КвалификаторыДвоичныхДанных
КвалификаторыСтроки    КвалификаторыСтроки    КвалификаторыСтроки
КвалификаторыЧисла    КвалификаторыЧисла    КвалификаторыЧисла
ДопустимыйЗнак    Любой    ДопустимыйЗнак
Разрядность    15    Число
РазрядностьДробнойЧасти    3    Число
9 Мисти
 
17.12.13
23:53
Это я до чего дорылась?
10 Лефмихалыч
 
17.12.13
23:58
(6) может это старые значения, введенные в базу до изменения типа?
11 Мисти
 
18.12.13
00:02
По-моему, это что-то более внутреннее.
Вот отладчик мои показывает:
Наименование    ТипЗначения    ФорматСвойства
"Количество шт в уп"    Число    "ЧЦ='15'; ЧДЦ='0'; ЧН='Не введено'"
"Выгружать на сайт"    Булево    ""
"Ширина штуки, см"    Число    "ЧЦ='15'; ЧДЦ='4'; ЧН='Не введено'"
"Длина штуки, см"    Число    "ЧЦ='15'; ЧДЦ='4'; ЧН='Не введено'"
"Толщина шт, мм"    Число    "ЧЦ='15'; ЧДЦ='4'; ЧН='Не введено'"
"Площадь штуки, м2"    Число    "ЧЦ='15'; ЧДЦ='4'; ЧН='Не введено'"
"Типоразмер коллекции"    Значение свойства объектов    ""
"Складская программа"    Значение свойства объектов    ""
"Вид плитки"    Значение свойства объектов    ""
"ЮШирина штуки, см"    Число    "ЧЦ='15'; ЧДЦ='4'; ЧН='Не введено'"
12 Torquader
 
18.12.13
00:25
Сначала неплохо бы сохранить четыре знака и увидеть их в базе.
Потом нужно посмотреть, кто и как выходит эти четыре знака на экран.
Ну и "коней на переправе не меняют".
Радуйтесь, что у вас не FireBird - там после изменения разрядности старые значения делятся на десять.
13 Мисти
 
18.12.13
00:29
Так они даже в форме не сохраняются! в смысле - в номенклатуре.
В документах всё прекрасно попадает в движения документов.
14 Мисти
 
18.12.13
00:34
Пока переправляю везде, где встречу -
Новый КвалификаторыЧисла(15,3 на
Новый КвалификаторыЧисла(15,4
15 Мисти
 
18.12.13
00:55
Именно с доп. реквизитами засада!
16 Мисти
 
18.12.13
01:11
ОписаниеСвойства.ТипЗначения - откуда в этом типе значения
КвалификаторыЧисла
РазрядностьДробнойЧасти - 3?
17 Torquader
 
18.12.13
01:13
А если создать новый реквизит с четыремя и туда переписать всех, у кого три ?
18 Torquader
 
18.12.13
01:19
Там же ПВХ "складывается" в РегСведений, и наверняка, старые значения хранятся, как есть.
И вообще - завтра увижу эту "чудную" УТ (где я строку на булево менял в доп-реквизитах - пришлось все значения удалять, чтобы "умный" запрос нашёл нужное значение - иначе оно находилось, но тип у него был неверный).
19 Мисти
 
18.12.13
01:27
Я просто сделала новый, тот же эффект! Выглядит, будто 4, но четвертый знак не сохраняется вообще, даже в форме!
20 Мисти
 
18.12.13
02:31
И опять с "ТаблицейТовара" история!
Там, где она используется - проводки не учитывают 4-й знак.
21 Мисти
 
18.12.13
02:32
22 Мисти
 
18.12.13
03:06
Разгадка близка!
При задании типа для дополнительного реквизита предлагается на выбор партнер, валюта, то-сё, и число с точностью до 3.
Это потом как бы значение - почему-то можно и больше, наверное проверки там нет.
А где задано это число?
23 Мисти
 
18.12.13
03:14
Тип значения характеристик!
Ура.
24 Wobland
 
18.12.13
04:21
мало им площади, теперь линейные размеры провинились..
25 Мисти
 
18.12.13
14:05
(24) Боюсь, что что-то зашитое и в той теме!
(21)
Уже в нескольких документах, где делается предварительный расчет менеджера временных таблиц - последний знак пропадает.
26 Lama12
 
18.12.13
14:19
Плохая идея увеличения разрядности до 4 знаков...
А если "решение принято не мной", то пусть те кем решение принято и думают что делать.
27 Fish
 
18.12.13
14:23
Вот так и ломаются базы :)
28 Sabbath
 
18.12.13
14:30
(14) Предлагаю глобальной заменой все тройки на четверки заменить)
А в отладчике этот однозначно не видно, в какой момент там ноль появляется? По-моему, это должно быть понятно по коду. Если в коде все ок, то где-то в макете/скд
29 zippygrill
 
18.12.13
14:38
Мисти, что ты наделала.
30 Мисти
 
18.12.13
14:42
(28) Ну я практически так и поступаю.
Новый КвалификаторыЧисла(15,3),
КАК ЧИСЛО(15, 3)
но этого мало! Вот в планах видов характеристик - тип оказался числа зашит...
31 dmpl
 
18.12.13
14:43
(0) Указывайте толщину в нанометрах - будут модные нанотехнологии, и конфигурацию менять не придется.
32 Torquader
 
19.12.13
11:20
Вообще-то, проблема выросла из того, что неправильно задали единицу измерения.
Вы измеряете площадь плитки в м2 - у вас получается, что площадь выражается как 0.ххх или 0.0ххх - то есть единица не нормирована.
Если выбрать единицу площади дм2 (в сто раз меньшую), то у вас получится наиболее нормированный случай х.ххх (для больших хх.ххх). Понятно, что см2 тоже ничего хорошего не принесёт, так как мы сместимся в "большие числа", где тоже есть грабли.

То есть, в вашем случае, лучше ввести основную единицу как дм2, а при продаже м2 пересчитывать в них.

Второй вариант - идти не от плитки, а от упаковки (не забываем, что по традиции плитка продаётся упаковками) - нужно только знать, сколько квадратных метров занимает одна упаковка, чтобы высчитать, сколько упаковок нужно клиенту. Обычно получается, что упаковка, выраженная в квадратных метрах очень похожа на нормированную единицу.
P.S. подозреваю, что именно по причине "нормированности" алкоголь измеряют в декалитрах.

Удачи.
Запрограммировать и исправить можно всё - но нужно ли ?
33 selenat
 
19.12.13
11:28
(32) +1
34 selenat
 
19.12.13
11:29
Все бы хирургу резать (с)
35 Lama12
 
19.12.13
12:08
(32) Ай молодца!
+1
36 Новиков
 
19.12.13
12:12
(32) Все по делу.

+1
37 Мисти
 
19.12.13
13:26
А поступление как заводить?
Да, собственно, и отгрузку! Люди привыкли видеть или м2 или штуки.
38 Мисти
 
19.12.13
13:28
В номенклатуре-то я разобралась! Всё получилось!
Осталась засада в некоторой печати и в некоторых проводках.
Странное дело,формируются движения сразу по 5 регистрам, в 5 количество с 4 знаками, а в пятом - теряется.
Зато в другом документе (типе документа) - и в пятом всё хорошо!
39 Torquader
 
19.12.13
13:29
(37) А что мешает создать "дочернюю" единицу измерения как "м2" - и заводить в ней - да, будут некоторые округления, но от этого никуда не денешься.
40 Мисти
 
19.12.13
13:33
4 знака решают все проблемы.
41 Torquader
 
19.12.13
13:43
(40) Если кому-то не хватает трёх знаков, то потом не хватит четрёх, шести и т.д.
P.S. во всех магазинах, где продаётся плитка площадь коробки указана с двумя-тремя знаками после запятой - им, почему-то, этого хватает.
И, подозреваю, что ваши поставщики тоже округляют по полной.
42 Lama12
 
19.12.13
13:44
(40) Не решают. В том то и дело.
43 Wobland
 
19.12.13
13:45
(40) пока не начнёшь умножать свои 4 знака на что-нибудь с точностью 1 или больше
44 Torquader
 
19.12.13
13:48
Всё зависит от цены - если для получения цены мы умножаем количество на цену, а потом округляем до двух знаков после запятой (копейки).
Если цена несколько тысяч за единицу, то четыре знака что-то спасут, если нет - то четвёртый знак количества уже уйдёт в копейки.

Просто, проблема, например, такого же плана решается в общепите - когда в блюдо кладём граммы чего-то, то если считать по блюдам - получается округление и ошибки, а если считать расчёт на 100 или 1000 блюд, то получается всё достаточно сносно и трёх знаков хватает.
45 selenat
 
19.12.13
13:49
(37) Пример.
Есть единица измерения тыс. шт. Базовая единица у него штука, коэффициент = 1000. Приходуем в тыс. шт. Ничто не мешает кстати печатные формы делать в базовых единицах измерения, т.е. в штуках. То же самое и у тебя. Приходуешь и расходуешь в единицах, которые хорошо масштабируются и для которых поэтому хватает знаков. Печатные формы можно делать с использованием базовых единиц (м2 или шт)
46 dmpl
 
19.12.13
13:53
(40) Делай сразу 10 знаков - чтобы 2 раза не вставать.

(41) Ага, размеры плитки тоже округлены ;)
47 Torquader
 
19.12.13
14:00
(46) Размеры плитки округлены до пол-сантиметра.
При укладке между плитками оставляют промежутки - их кто-то учитывает ?
48 Wobland
 
19.12.13
14:02
(47) самый цимес считать арсход плитки при диагональном способе укладки
49 Сисой
 
19.12.13
14:05
(0) Очень глупое решение.
50 Torquader
 
19.12.13
14:50
(48) Какая разница, как укладывать - плитку всё равно резать приходится - точно не порежешь, так что допуски должны быть - в частности, проще неполную плитку считать как полную, если ширина одного из измерений больше половины, и как половину, если меньше.
Но это уже расчёт производства работ - это не УТ, а строительная конфигурация получится, а у (0) только "уточка" и куча бредовых идей.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший