|
|
|
Проверка XDTO - Несоответствие фасету TotalDigits = '6' | ☑ | ||
|---|---|---|---|---|
|
0
RomaH
naïve
13.01.15
✎
13:58
|
Ошибка при установке значения атрибута контекста (v_indicator): Ошибка проверки данных XDTO:
Значение: '24.655' не соответствует простому типу: Несоответствие фасету TotalDigits = '6' почему 100 соответствует этому фасету а '24.655' - нет ? |
|||
|
1
Господин ПЖ
13.01.15
✎
14:00
|
строка?
|
|||
|
2
RomaH
naïve
13.01.15
✎
14:01
|
||||
|
3
RomaH
naïve
13.01.15
✎
14:02
|
(1) - число. я сначала проверил на тип - потом на мисту
|
|||
|
4
Господин ПЖ
13.01.15
✎
14:04
|
http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-totalDigits
пишут что по типу значение должно быть положительное целое |
|||
|
5
RomaH
naïve
13.01.15
✎
14:05
|
вот добавил вывод в сообщения значения и типа:
30,781 Число {Документ.ВыгрузкаРеестраВОМС(616)}: Ошибка при установке значения атрибута контекста (v_indicator): Ошибка проверки данных XDTO: Значение: '30.781' не соответствует простому типу: Несоответствие фасету TotalDigits = '6' |
|||
|
6
RomaH
naïve
13.01.15
✎
14:08
|
(4) ты точно уверен?
value = positiveInteger - вот это? это вроде к самому показателю - у меня он равен 6 |
|||
|
7
Широкий
13.01.15
✎
14:08
|
Decimal - это случаем не целые числа?
|
|||
|
8
RomaH
naïve
13.01.15
✎
14:09
|
и как бы я сейчас переписываю формирование XML через XDTO
до этого этот же алгоритм, но Запись.ЗаписатьНачалоЭлемента("indicators"); Для каждого Эл Из МассивПоказателей Цикл Запись.ЗаписатьНачалоЭлемента("indicator"); Если Эл.КодПоказателя = 11 Тогда Запись.ЗаписатьАтрибут("type_indicator", "8"); Иначе Запись.ЗаписатьАтрибут("type_indicator", СокрЛП(Эл.КодПоказателя)); КонецЕсли; Запись.ЗаписатьАтрибут("measure", СокрЛП(Эл.ЕдиницаИзмерения)); Если Эл.Количество = 0 Тогда Запись.ЗаписатьАтрибут("v_indicator", "0.000"); Иначе Запись.ЗаписатьАтрибут("v_indicator", "" + Формат(Эл.Количество,"ЧРД=.")); КонецЕсли; Запись.ЗаписатьКонецЭлемента();//indicator который в конце ппроверялся на ссоответсвие схеме - и проверка по схеме проходила а тут - почему-то не ссответсвует |
|||
|
9
RomaH
naïve
13.01.15
✎
14:10
|
(7) нет - интеджер - для целых
и ошибка: Несоответствие фасету TotalDigits = '6' |
|||
|
10
Господин ПЖ
13.01.15
✎
14:11
|
(6) 30.781 - это целое?
|
|||
|
11
Господин ПЖ
13.01.15
✎
14:12
|
(7) это десятичное
|
|||
|
12
RomaH
naïve
13.01.15
✎
14:12
|
вот вывод всех значений:
30,781 30,781 Число {Документ.ВыгрузкаРеестраВОМС(616)}: Ошибка при установке значения атрибута контекста (v_indicator): Ошибка проверки данных XDTO: Значение: '30.781' не соответствует простому типу: Несоответствие фасету TotalDigits = '6' 0 4,7 4,7 4,2 4,4 80 130 165 55 78 20,202 20,202 Число {Документ.ВыгрузкаРеестраВОМС(616)}: Ошибка при установке значения атрибута контекста (v_indicator): Ошибка проверки данных XDTO: Значение: '20.202' не соответствует простому типу: Несоответствие фасету TotalDigits = '6' 0 6 4,3 85 140 176 113 117 36,48 0 70 120 175 87 78 28,408 28,408 Число {Документ.ВыгрузкаРеестраВОМС(616)}: Ошибка при установке значения атрибута контекста (v_indicator): Ошибка проверки данных XDTO: Значение: '28.408' не соответствует простому типу: Несоответствие фасету TotalDigits = '6' |
|||
|
13
RomaH
naïve
13.01.15
✎
14:14
|
т.е.
36,48 проходит а 28,408 - нет (10) еще раз - ты про целое не туда смотришь - целым должен быть показатель "TotalDigits" у меня он целый - 6 нельзя его поставить равным 6,5 |
|||
|
14
mikecool
13.01.15
✎
14:14
|
(12) может кол-во символов не проходит уже, какой то служебный может считается
|
|||
|
15
RomaH
naïve
13.01.15
✎
14:18
|
(14) какое количество символов у числа?
увеличил тотал диджитс и количество после запятой дор 7 и до 4 соответсвенно - ничего не поменялось |
|||
|
16
Господин ПЖ
13.01.15
✎
14:19
|
у тебя там рядом fractionDigits не задан?
типа fractionDigits = 2 тогда 28,408 не катит а 28,40 проскочит |
|||
|
17
Господин ПЖ
13.01.15
✎
14:19
|
||||
|
18
RomaH
naïve
13.01.15
✎
14:20
|
||||
|
19
RomaH
naïve
13.01.15
✎
14:21
|
нет - ругается именно на количество цифр
|
|||
|
20
mikecool
13.01.15
✎
14:22
|
(15) "какое количество символов у числа? "
28,408 наверняка представляется как строка "28,408" - она уже 6 символов, мб к енй прибавляется какой то служебный символ это я так, предположил |
|||
|
21
RomaH
naïve
13.01.15
✎
14:23
|
уменьшил до 5 стало:
31,64 Число {Документ.ВыгрузкаРеестраВОМС(616)}: Ошибка при установке значения атрибута контекста (v_indicator): Ошибка проверки данных XDTO: Значение: '31.64' не соответствует простому типу: Несоответствие фасету TotalDigits = '5' но если увеличить до 7 - то все-равно ругается на 28,404 фича какая-то |
|||
|
22
Господин ПЖ
13.01.15
✎
14:24
|
(20) при анализе точка выпиливается
|
|||
|
23
RomaH
naïve
13.01.15
✎
14:25
|
(20) самое интересное, что XML с 28,404 проходит проверку по схеме, если её "руками создать"
|
|||
|
24
Широкий
13.01.15
✎
14:25
|
(21) Длину дробной части пробовал увеличить?
|
|||
|
25
Широкий
13.01.15
✎
14:26
|
И вообще
Запись.ЗаписатьАтрибут("v_indicator", "" + Формат(Эл.Количество,"ЧРД=.")); Я бы поменял на Запись.ЗаписатьАтрибут("v_indicator", XMLСтрока(Эл.Количество)); |
|||
|
26
mikecool
13.01.15
✎
14:38
|
(25) да и вообще - заюзать схему хдто, раз уж на нее переписывается
|
|||
|
27
RomaH
naïve
13.01.15
✎
14:50
|
(26) дак я её и заюзал - смотрите скрин, однако
(24) пробовал - ошибка именно из-за тотал диджитс если её в 1 - ошибки нет уменьшить до 5 - ругается начинает на 24,26 увеличить до 8 - ошибка на 24,404 остается |
|||
|
28
Господин ПЖ
13.01.15
✎
14:55
|
такое впечатление что в самой xml в значении есть еще что-то...
|
|||
|
29
RomaH
naïve
13.01.15
✎
14:57
|
||||
|
30
RomaH
naïve
13.01.15
✎
15:02
|
Выставил общее количество цифр = 8 перестала ругаться
на 7 - еще ругалась |
|||
|
31
RomaH
naïve
13.01.15
✎
15:04
|
131,64
0 104,9 104,5 180 220 262 163 182 124,005 124,005 Число {Документ.ВыгрузкаРеестраВОМС(616)}: Ошибка при установке значения атрибута контекста (v_indicator): Ошибка проверки данных XDTO: Значение: '124.005' не соответствует простому типу: Несоответствие фасету TotalDigits = '8' похоже после 5 надо +2 делать |
|||
|
32
Господин ПЖ
13.01.15
✎
15:16
|
>XML еще нет. все пишется в объектXDTO
а где он? Запись.ЗаписатьАтрибут("v_indicator", "" + Формат(Эл.Количество,"ЧРД=.")); это запись "православного" xml где тут xdto? |
|||
|
33
RomaH
naïve
13.01.15
✎
16:07
|
(32) скрин видно или где? http://www.dropmocks.com/mH3WHM
|
|||
|
34
RomaH
naïve
13.01.15
✎
16:08
|
и как бы я сейчас переписываю формирование XML через XDTO
до этого этот же алгоритм, но |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |