Флавия
Автор
400427
Просмотров
18.218.196.53
Ваш IP
21 сентября 2023
Дата создания

Обработка с инфостартра

Имя обработки:
 
Тип обработки:
1C: Предприятие 8.2
Категория:Все для 1C:8
Конфигурация:Обмен через XML
Кому предназначена обработкаПрограммист
Краткое описаниеUPDATE 0.4: Добавил возможность чтения xml из строки.

Т.к. "двухпальцевая" читалка Шепота устарела, да и написана неоптимально... Собственно вот. С рекурсией не стал заморачиваться, т.к. не нужно она тут...совсем не нужна. Код очень простой (половину из него занимают плюшки для отражения самого процесса). Индикатор тоже не стал прикручивать, т.к. он замедляет процесс.  Заменил его адаптивным выводом кол-ва прочитанных узлов - чем больше прочитано, тем больше шаг вывода (1,10,100,1000).

Выбираем файл, указываем число строк для чтения за раз (0 - весь файл), нажимаем кнопку. Повторное нажатие кнопки чтения прочитает следующий блок строк. После окончания файла выводится сообщение и чтение не будет происходить пока не выберут новый файл для чтения или не нажмут кнопку очистки дерева.



Ссылка на обработку:infostart.ru/public/84254
Скачать программу:/Download/report/84254.rar
Комментария к обработке:


UPDATE 0.4: Добавил возможность чтения xml из строки.

Т.к. "двухпальцевая" читалка Шепота устарела, да и написана неоптимально... Собственно вот. С рекурсией не стал заморачиваться, т.к. не нужно она тут...совсем не нужна. Код очень простой (половину из него занимают плюшки для отражения самого процесса). Индикатор тоже не стал прикручивать, т.к. он замедляет процесс.  Заменил его адаптивным выводом кол-ва прочитанных узлов - чем больше прочитано, тем больше шаг вывода (1,10,100,1000).

Выбираем файл, указываем число строк для чтения за раз (0 - весь файл), нажимаем кнопку. Повторное нажатие кнопки чтения прочитает следующий блок строк. После окончания файла выводится сообщение и чтение не будет происходить пока не выберут новый файл для чтения или не нажмут кнопку очистки дерева.
1. cool.vlad4 2 18.04.11 17:11
:D Это где же такие симпатичные девушки работают?
+ – Ответить
2. YVolohov 718 18.04.11 17:48
Фотка с девушкой заслуживает отдельного плюса :D
+6 –1 Ответить 1
14. Altair777 644 19.04.11 10:56
(2)
YVolohov пишет:
Фотка с девушкой заслуживает отдельного плюса

А Вы Инфостарт с Контактом не перепутали?
+1 – Ответить
3. Ish_2 1098 18.04.11 18:13
Что есть "Tits" на майке ? Напрашивается вольный перевод.
+ – Ответить 2
4. marsohod 122 18.04.11 20:02
(3) "tits" - синица (англ.)
Почему-то сразу вспоминается народная поговорка: "Лучше синица (tits) в руках, чем ..." :D
+8 – Ответить
10. cool.vlad4 2 18.04.11 21:17
(4) но в данном контексте перевод однозначный...и на этот раз гуглопереводне ошибается :D
ЗЫ Вот какое влияние оказывают женщины...сколько комментов и ни один про обработку...
+1 – Ответить
5. пользователь 18.04.11 20:11
Сообщение было скрыто модератором.
6. anig99 2832 18.04.11 20:21
(5) Это даже на эротику не тянет... Какие-то проблемы с этим?
+1 – Ответить
8. пользователь 18.04.11 20:25
Сообщение было скрыто модератором.
7. anig99 2832 18.04.11 20:23
(5).... в догонку... O-Planet тогда Хью Хафнер Инфостарта (:
+ – Ответить
9. yku 368 18.04.11 21:15
срочно менять на бородатого мужика!
+2 – Ответить
11. Ish_2 1098 18.04.11 22:21
Я тебя, Саша, решительно осуждаю.
Но ... девушка хорошая. Программистка 1с ?
+ – Ответить
12. anig99 2832 18.04.11 22:32
Мечты...мечты... Я бы такую поучил 1с (: Скорее всего она web-программист...
+ – Ответить
13. Шёпот теней 1777 19.04.11 07:43
... ну, ВЫ только посмотрите какие у (нас) программистов комплексы относительно крАсивых дЭвушЭк ...

... ужжжж ...


... открываем главную стрАницу ИС ... идЁм вниз ... смотрим "Лидеры продаж" ... и ... О!... боже... что МЫ тАмА видим-с ... ??? ...

и на первой и на второй очень даже и секси и порно ... ))) ...


... ВОТЧТОхотелосьПОДметить ...

...
+1 – Ответить
15. cool.vlad4 2 19.04.11 10:56
есть еще вот такая http://i5.photobucket.com/albums/y164/wteach/pictorials/Stupid/forbidden-t-shirt-funny-sings-wallp.jpg
...ошибка 403 :D
+ – Ответить
16. Ish_2 1098 19.04.11 15:05
Tits - на главную страницу !
+ – Ответить
17. 8c1.ru 152 19.04.11 15:25
не читал, но фотку одобряю
+ – Ответить
18. Трактор 1245 19.04.11 15:33
Сиськи обрамлены тэгами. Поэтому перевод однозначный и синицЫ тут ни при чём.
Кстати, наличие тэгов делает картинку уместной.
+4 – Ответить
19. Andzhej 19.04.11 15:34
За оформление публикации "+" АДНАЗНАЧНА...Жириновский :D
+ – Ответить
20. anig99 2832 19.04.11 16:10
Весна, однако. Пока только один комментарий как-то связан с обработкой...
+ – Ответить
21. iov 407 19.04.11 16:30
обработка заслуживает пристального внимания но девушка таки победила и внимание досталось ей :D
+1 – Ответить
22. anig99 2832 19.04.11 17:53
Мы попали на первую страницу!
+ – Ответить 2
23. Ish_2 1098 19.04.11 19:55
(22) Этого мало.
Твоя обработка вполне претендует (скажу по секрету) на выбор экспертов.
Они тоже люди.
+ – Ответить
24. anig99 2832 19.04.11 20:12
(23) надо будет цену за обработку установить (:
+ – Ответить
25. wolfsoft 2421 20.04.11 13:10
Так и знал, что здесь обсуждают фото девушки! :D
+ – Ответить
26. CheBurator 3115 20.04.11 14:40
Как модератор категорически советую аватар обработки сменить на более содержательный и отражающий суть разработки. Фото девушек и вольные аватары - помещайте в блог и в комменты.
+1 – Ответить 2
27. anig99 2832 20.04.11 14:51
(26) аватар отражает суть обработки - простое, общедоступное и наглядное чтение XML файлов.
Собственно здесь аватар не менее связан с сутью обработки.


З.Ы. Мысленно поверните девушку в профиль и сравните со скриншотом результатов обработки...
+ – Ответить
29. agat2008 20.04.11 17:46
(27) кривые совпадают! фотка уместна! :D
+ – Ответить
28. bidond 44 20.04.11 17:41
Весь день пялюсь в обработку :)
+ – Ответить
30. Altair777 644 20.04.11 18:47
Согласен с Че. Скрыл все флудовые комментарии. Они оказались действительно почти ВСЕ :D
+ – Ответить
31. cool.vlad4 2 20.04.11 23:08
(0) Классная обработка ;)
ЗЫ на всякий случай девушку продублировал http://forum.infostart.ru/forum1/topic39294/
+ – Ответить
33. sumixam 09.09.11 15:21
спасибо пригодилась
+ – Ответить
34. Angry 11 29.09.11 19:04
Спасибо, хороший пример для освоения ЧтенияXML
И для того что бы понять что 1С так ни фига и не сделали для удобной работы с XML.
+ – Ответить 6
35. anig99 2832 29.09.11 20:32
(34) а что Вы считаете удобной работой?
+ – Ответить
36. Zoomby 29.09.11 23:24
(35) Одна большая кнопка, которая все делает сама. :))
+ – Ответить
37. Angry 11 30.09.11 19:33
(35) В данном случае удобно - это когда для работы с XML как с деревом, не приходится вставлять в код подобные куски кода с преобразованием текстового файла в дерево.
Ведь XML фактически хранит древовидную структуру.
+ – Ответить
38. anig99 2832 30.09.11 20:47
(37) у меня вроде нет прямой работы с xml как с текстовым файлом... только методы xml. Хочется, чтобы 1с работала с xml также со своим деревом? Проблема в том, что такой подход потребует загружать весь xml файл сразу в память, а не читать его последовательно...
+ – Ответить
39. Angry 11 01.10.11 00:47
(38) Вот в том и проблема получается, сначала читаем последовательно, строим дерево, а потом уже обрабатываем данные.

Я не говорил, что тут работа как с текстом, тут на уровень выше, работа с элементами (тэгами). Но XML по сути объектная модель данных, с такой моделью и хочется работать.
+ – Ответить
40. cool.vlad4 2 01.10.11 00:53
(39) Вобще-то в 1С-ке используется как раз таки объектная модель - DOM - которая и выполняет всю грязную работу, ну и память жрет. Был бы sax парсер - вот тогда бы вы делали бы все ручками;-) Не, то, что вы имеете ввиду, это просто отсутствие синтаксического сахара, упрощающего написание кода, - который есть в других языках.
+ – Ответить
41. cool.vlad4 2 01.10.11 00:57
Создаем док в C# XDocument doc = new XDocument(
new XElement("Document",
new XElement("Rekvizit",
new XAttribute("Date", 34124234),
new XAttribute("Name", "fgergwertge"),
и т.д.
IEnumerable docs = from t in doc.Root.Elements("Document")
и тд.
+ – Ответить 2
42. anig99 2832 01.10.11 01:05
(41) идеальных языков нет. к С есть претензии по массивам и работе с БД.
+ – Ответить
43. cool.vlad4 2 01.10.11 01:30
(42) ну, это не совсем C - это C#, который вобщем-то разительно отличается от своего предка. Но у меня претензий не было;-) Чем старше становлюсь, тем больше убеждаюсь, что не в языке правда;-).
+ – Ответить
44. svs74 9 05.11.11 07:53
Вполне приличная обработка, для моего конкретного случая подошла весьма, т.к. самому некогда было заморачиваться.
+ – Ответить
45. petrovaUL 30.11.11 13:49
Для проверки файла ХМЛ пригодится
+ – Ответить
46. German 413 16.03.12 22:05
комментарии не читает
+ – Ответить
47. arjuna 20.05.12 09:39
Еслиб ни девка, прошел бы мимо. Рефлекс блин. Она особо ии чем не отличается, таких сотни на любом мусорном сайте, но на этом конкуренции нету. Главное чтоб в тенденцию не перешло.
+2 – Ответить 1
52. Артано 741 15.10.13 10:50
(47) arjuna, это КПВ
+ – Ответить
48. Новенький_2209 17.09.12 15:31
С изобретением велосипеда.
+1 – Ответить
49. xzorkiix 33 13.06.13 09:20
Я бы вдул. и "Инфостарт одобрил".

Может кто поможет лень побороть? На входе xml-строка, на выходе - отформатированная строка xml.
+ – Ответить
50. kser87 2383 13.06.13 11:04
Очень полезная штука! Спасибо!
+ – Ответить
51. LanaSN 12.09.13 14:12
Спасибо, удобная и полезная вещь!
+ – Ответить
53. mehalyna 27.10.13 10:12
Полезная штуковина. Спасибо автору!
+ – Ответить
54. dock 44 20.12.13 18:16
работает! спасибо автору
+ – Ответить
55. Alfer 16.01.14 19:07
теперь все через (ж) XML - а по сему полезная разработочка - тем более бесплатно - спасибо щедрый автор
+ – Ответить 1
56. anig99 2832 17.01.14 10:19
(55) спасибо. не забудьте плюс поставить
+ – Ответить
57. vevd 27.02.14 18:45
Спасибо! большое! очень-очень в тему !

+ – Ответить 1
59. anig99 2832 06.03.14 11:46
(57)(58) а плюсики поставили?
+ – Ответить
58. bursanb 9 06.03.14 11:08
нормально работает, спасибо автору.
+ – Ответить
60. bashirov.rs 30 18.09.14 07:18
Обработка выдает ошибку
{Форма.Форма.Форма(129)}: Ошибка при вызове метода контекста (Прочитать)
Если ФайлXML.Прочитать() Тогда
по причине:
Ошибка разбора XML: - [36,16]
Фатальная ошибка:
Unescaped '<' not allowed in attributes values
SystemId: file://D:/1.XML.

Но после чего все выводит как надо. В чем может быть проблема? Не хотелось бы ковыряться в обработке.

+ – Ответить 2
61. anig99 2832 21.09.14 12:31
(60) bashirov.rs, судя по всему проблема в самом файле
+ – Ответить
62. bashirov.rs 30 28.11.14 13:32
(61) Вы правы. Спасибо разобрался)
+ – Ответить
63. AllexSoft 28.11.14 13:44
зачем это поделие когда есть AKXMLEdit ? если бы редактирование XML тогда согласен, а так не понял зачем оно..
+ – Ответить 1
64. anig99 2832 30.11.14 11:43
(63) AllexSoft, сама по себе обработка скорее всего не понадобится (кроме случаев, когда сидишь за компом пользователя, то быстрее запустить обработку из справочника, чем устанавливать сторонние программы). Во-вторых обработка содержить процедуры и функции, которые могут быть использованы в составе других обработок.
+1 – Ответить
65. ice_nio 22.07.15 14:45
Спасибо, помогла обработка!
(Все-таки интересно почему при отладке, выскакивает ошибка, а при чтении в режиме предприятия НЕТ!? )
+ – Ответить 1
66. anig99 2832 22.07.15 15:04
(65) ice_nio, а что за ошибка?
+ – Ответить
67. ice_nio 23.07.15 12:17
что - то там за границами массива, но именно при отладке, в предприятии работает как часы...
+ – Ответить
68. Serg O. 210 03.03.17 16:07
хорошая "примочка"... спс

одну мааленькую добавочку еще приделать надо бы (я себе уже сделал) - кнопку "Развернуть"

при 1 нажатии - разворачивает всё... при 2-ом сворачивает

текст для кнопки - тоже "бесплатно"

Процедура РазвернутьНажатие(Элемент)

ЭлементыФормы.Развернуть.КнопкаПоУмолчанию = не ЭлементыФормы.Развернуть.КнопкаПоУмолчанию;
Свернуть = не ЭлементыФормы.Развернуть.КнопкаПоУмолчанию;

для каждого стр1 из ДеревоXML.Строки цикл
если Свернуть тогда
ЭлементыФормы.ДеревоXML.Свернуть(стр1);
Иначе // сразу всё дерево
ЭлементыФормы.ДеревоXML.Развернуть(стр1, Истина);
КонецЕсли;

Если Свернуть тогда
Для каждого стр2 из стр1.Строки цикл
ЭлементыФормы.ДеревоXML.Свернуть(стр2);
для каждого стр3 из стр2.Строки цикл
ЭлементыФормы.ДеревоXML.Свернуть(стр3);
для каждого стр4 из стр3.Строки цикл
ЭлементыФормы.ДеревоXML.Свернуть(стр4);
КонецЦикла;
КонецЦикла;
КонецЦикла;
КонецЕсли;

КонецЦикла;

КонецПроцедуры

+ – Ответить
69. Serg O. 210 03.03.17 16:11
ошибка иногда вываливается...страшная... (см. файл)
если реальная ошибка в структуре XML есть - у меня недопустимые символы были...

надо в "попытку" обернуть внутри Функция ЕстьЧтоЧитать()
и предупреждать... ошибка в формате XML или что-то такое...

Прикрепленные файлы:
+ – Ответить
70. nico2 16 13.08.19 21:42
Спасибо Вам большое, классная вещь. Давно искал нечто подобное универсальное
+ – Ответить