|
Проверка XML валидности схемы XML | ☑ | ||
---|---|---|---|---|
0
Яплакал
04.01.16
✎
14:50
|
Что-то не выходит у меня "каменный цветок"
Собственно мои потуги: СхемаXML = Новый СхемаXML; СхемаXML.РасположениеСхемы = "Схема.xsd"; СхемыXML = Новый НаборСхемXML; СхемыXML.Добавить(СхемаXML); Фабрика = Новый ФабрикаXDTO(СхемыXML); ЧтениеXML = Новый ЧтениеXML; ЧтениеXML.ОткрытьФайл("файл.xml"); Данные = Фабрика.ПрочитатьXML(ЧтениеXML); Схема и xml файлы разные, но файл прекрасно читается и Данные <> неопределено |
|||
1
Записьдампа
04.01.16
✎
15:07
|
А какими источники знаний ты уже использовал, чтобы дойти до такого? Ну, чтобы нам тут не повторяться и не посылать тебя в них?
|
|||
2
Яплакал
04.01.16
✎
15:16
|
(1) конкретно этот пример взят отсюда
v8: Чтение xml по схеме xsd так же пробовал получать схему иначе Функция ПолучитьСхемуИзФайла() ЧтениеXML = Новый ЧтениеXML; ЧтениеXML.ОткрытьФайл("схема.xsd"); ПостроительDOM = Новый ПостроительDOM; ДокументСхемыDOM = ПостроительDOM.Прочитать(ЧтениеXML); ПостроительСхемы = Новый ПостроительСхемXML; СхемаXML = ПостроительСхемы.СоздатьСхемуXML(ДокументСхемыDOM); Возврат СхемаXML; КонецФункции функцией то правильней т.к. схема может быть в макете как часть конфигурации, но результат тот же |
|||
3
Записьдампа
04.01.16
✎
15:59
|
(2) Понятно...
1С при чтении по умолчанию не проверяет тип читаемого и не проводит валидации данных по схеме. При невозможности определить тип тебе возвращается anyType. Это сделано для возможности поточного чтения файлов с изменением логики по ходу обработки. Для изменения этого поведения надо изменить параметры чтения при открытии. |
|||
4
Serginio1
04.01.16
✎
16:21
|
(0) Создать класс с событием возникающим при обнаружении ошибкт и использовать
https://msdn.microsoft.com/ru-ru/library/ms162371(v=vs.110).aspx http://catalog.mista.ru/public/417830/ |
|||
5
Serginio1
04.01.16
✎
16:26
|
А вот используя ValidationEventHandler не надо и свой класс городить
https://msdn.microsoft.com/ru-ru/library/3740e0b5(v=vs.110).aspx |
|||
6
Serginio1
04.01.16
✎
16:27
|
событие XmlReaderSettings ValidationEventHandler
|
|||
7
Записьдампа
04.01.16
✎
16:38
|
(4) Ты серьёзно думаешь, что человек, который не может в СП сможет в msdn?
|
|||
8
Рэйв
04.01.16
✎
16:51
|
У меня валяется обработка на инфо...Может пригодится
http://catalog.mista.ru/public/286257/ |
|||
9
Serginio1
04.01.16
✎
16:54
|
(7) Если действовать по инструкции http://files.rsdn.ru/19608/%d0%a4%d0%b0%d0%b9%d0%bb%d1%8bNetObjectToIDispatch.zip
то думаю ничего сложного нет |
|||
10
Яплакал
04.01.16
✎
16:59
|
(9) ты прикалываешься, писать свое приложение на шарпе, вязать его с 1С и для чего? для того что бы проверить валидность, мдааа, мы не ищем легких путей )
(7) "который не может в СП сможет в msdn" не может в СП что? Представь себе с msdn в свое время пришлось поработать много |
|||
11
Serginio1
04.01.16
✎
17:13
|
(10) Не надо ничего псать на враждебном для тебя языке, нужно использовать классы .Net на родном для тебя 1С.
Я про шарп ни слова не сказал. пиши хоть на IronPython e Так в чем проблема. Все очень просто. |
|||
12
Serginio1
04.01.16
✎
17:23
|
11+ Я уде много лет использую http://catalog.mista.ru/public/238584/
Для того, что бы использовать мощь нет, для того, что нет в 1С. И ничего в этом смешного не вижу. Я только постоянно вижу как люди едят кактусы и ищут сложные пути |
|||
13
Serginio1
04.01.16
✎
17:26
|
И здесь http://catalog.mista.ru/public/434345/
человек не считает смешным для преобразования строк в даты использовать библиотеки Net |
|||
14
Яплакал
04.01.16
✎
17:34
|
(11) овчинка выделки не стоит, есть нюансы, не хочу вдаваться в них
|
|||
15
Записьдампа
04.01.16
✎
17:38
|
(10) Ну там вообще-то поиск есть. Который выводит на параметры метода ОткрытьФайл чтения xml
|
|||
16
Serginio1
04.01.16
✎
17:46
|
(14) Овчинка как стоит. Просто ты получаешь подробности об ошибках
https://msdn.microsoft.com/ru-ru/library/system.xml.schema.validationeventargs(v=vs.110).aspx |
|||
17
Яплакал
04.01.16
✎
18:32
|
(15) да спасибо, все работает.
(16) ну вот видешь все оказывается можно, а ты навертел некрутил лишнего |
|||
18
Serginio1
04.01.16
✎
22:10
|
(17) Есть ОткрытьФайл(<ИмяФайлаXML>, <Параметры>, <НаборСхемXML>, <Кодировка>)
, но например используя (16) ты можешь отлавливать ошибки и отсылать их программисту или поставщику. Мало того, накрученного ничего нет, так как более мощный инструмент |
|||
19
Злопчинский
04.01.16
✎
22:33
|
(18) не надо ездить по мозгам и сувать куда ни попадя. ничего эти обертки не могут. все им скармливать надо вручную. как было выяснено эти обертки для 77 даже программное проведение/изменение документа на клюшках самостотяельно отлдовить не могут (насколько я понял в меру своей неразумности)
|
|||
20
Serginio1
04.01.16
✎
23:11
|
(19) Пропиши в ПриЗаписи или ОюработкаПроведения и отсылай кому угодно события по ВэбСокетам. Или ты хочешь, что бы магическим способом все было? Если SQL то можно подписаться на события SQL без изменения кода в 1С.
Кстати для 7.7 моя обертка вообще свежий воздух. А вообще повеселил. Сравни возможности .Net и 1С. |
|||
21
Serginio1
04.01.16
✎
23:21
|
(19) Для DBF можно повесить событие на изменение файлов
|
|||
22
Serginio1
04.01.16
✎
23:27
|
Или использовать изменение в ЖР запоминать последнее время и парсить его. Так, что все можно умеючи
|
|||
23
Записьдампа
05.01.16
✎
01:38
|
(21) Это у тебя уже прямо классическое "как пристрелить себе ногу" на ассемблере. "Просто берём пистолет и прострелеваем себе ногу. Перед этим заново изобретаем порох, гильзу, пулю, затвор, пистолет, кости, сухожилия, мясо, ногу и все остальное. Для женской ноги - повторяем все с нуля"
|
|||
24
Serginio1
05.01.16
✎
09:46
|
(23) Ну ты же хочешь, что бы в коде не было изменений. Вот я тебе и предлагаю решение. А то, что есть мгновенные сообщения пользователям то ты это просто пропустил.
Как ты делаешь оповещение об изменении? Вот у меня есть готовое решение http://catalog.mista.ru/public/434771/ покажи своё. При этом у меня есть решения и на Whats App с отправкой с сервера и получение сообщений на сервере И прекрасно работает. Люди довольны |
|||
25
Записьдампа
05.01.16
✎
12:01
|
(24) Я хочу? Ты точно меня не с кем не путашь?
Но, пожалуй, на твоё классическое "сперва добейся" отвечу. Я не делаю оповещение об изменении, мне это не требуется. У меня никто не сидит, внимательно глядя в экран watsapp в ожидании срочного вызова - рота спецназа, на выезд! Иванова изменила номенклатуру, быстрей, быстрей, она может скрыться! Просто ты со своими попытками продавать машинки для стрижки волос в носу, которые обладают кучей возможностей и вообще мимими, в каждой теме уже примелькался. |
|||
26
Serginio1
05.01.16
✎
12:38
|
(25) Я не продаю. Я раздаю бесплатно и при этом делюсь своим опытом.
А сообщения нужны например для агентов на андроидах, айфонах.Классический выход из 1С итд. Кстати это не только мессенджер, но и аналог вэб сервиса только на клиенте. Например можно подготавливать данные на клиенте, а на ТСД обмениваться данными с этим клиентом. Я просто не пойму твоей ненависти к моей разработке. Чем она тебя так бесит? А спутал я тебя с Злопчинский. Вы оба на З. Прошу прощения. |
|||
27
Serginio1
05.01.16
✎
12:40
|
А по поводу того, что примелькался то я советую работоспособные примеры. В чем криминал? Почему это тебя так бесит?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |