Вход | Регистрация

1С:Предприятие ::

Метки: 

УТ 10.3 ПолеHTMLДокумента в письме. Как поместить таблицу в ТЗ ?

Я
   Румата
 
12.07.18 - 08:56
Доброго времени суток. С сайта на почту приходят заказы покупателей. Почту принимает встроенный почтовый клиент в УТ 10.3. Мне надо чтобы при нажатии на кнопку в письме автоматически создавался заказ покупателя.
Синхронизация по кодам номенклатуры с сайтом конечно же есть. Проблема у меня заключается в том, что в письме таблица, с колонками "Н/П", "Код номенклатуры", "Наименование", "Цена", "Цена со скидкой", "Сумма".

Я при нажатии на кнопку работаю с :
ЭлементыФормы.ПолеHTMLДокумента.Документ.activeElement.outerText

В этом параметре находится весь текст письма. Я функцией разбираю все строки письма и помещаю их в массив, а потом из элементов массива пытаюсь сделать заказ.

Таблица в письме видна, а у меня получается так, что колонки между собой разделены пробелом и я не могу понять где заканчивается одна колонка и начинается другая, т.к. пробелы есть и в наименовании товара. Может я не тот параметр ПолеHTMLДокумента использую ? Первый раз столкнулся с этим. Подскажите куда копать ? )
 
 
   shadow_sw
 
1 - 12.07.18 - 09:03
а передать его в excel, к примеру?
   Румата
 
2 - 12.07.18 - 09:12
(shadow_sw) Наверно вариант, если проще ничего не найду )
   Румата
 
3 - 12.07.18 - 09:19
Вот ещё нашел метод :
ЭлементыФормы.ПолеHTMLДокумента.получитьТекст()

Там примерно такой текст выходит :

<TD style="BORDER-BOTTOM: #e0e0e0 1px solid; BORDER-LEFT: #e0e0e0 1px solid; PADDING-BOTTOM: 6px; BACKGROUND-COLOR: #ffffff; PADDING-LEFT: 6px; WIDTH: 250px; PADDING-RIGHT: 6px; FONT-FAMILY: arial; BORDER-TOP: #e0e0e0 1px solid; BORDER-RIGHT: #e0e0e0 1px solid; PADDING-TOP: 6px">1 </TD>
<TD style="BORDER-BOTTOM: #e0e0e0 1px solid; BORDER-LEFT: #e0e0e0 1px solid; PADDING-BOTTOM: 6px; BACKGROUND-COLOR: #ffffff; PADDING-LEFT: 6px; WIDTH: 250px; PADDING-RIGHT: 6px; FONT-FAMILY: arial; BORDER-TOP: #e0e0e0 1px solid; BORDER-RIGHT: #e0e0e0 1px solid; PADDING-TOP: 6px">00000000372 </TD>

00000000372 - Код номенклатуры
   Румата
 
4 - 12.07.18 - 09:21
Думаю можно поискать тэг  </TD> чтобы разложить весь этот текст в массив. Всем спасибо, буду пробовать. Если у кого-нибудь ещё есть мысли - пишите пожалуйста, буду анализировать как лучше )
   Малыш Джон
 
5 - 12.07.18 - 09:25
(0) >>т.к. пробелы есть и в наименовании товара

ну из выше приведенного списка только у номенклатуры и могут быть пробелы. все остальные колонки ведь однозначно идентифицируются? слева - номер, код; справа - цена, сумма; а все остальное - номенклатура)
   DrShad
 
6 - 12.07.18 - 09:45
нужно учиться работать с html 
можно получить всю таблицу и обходом подчиненных узлов перебрать как строки так и колонки
   Остап Сулейманович
 
7 - 12.07.18 - 09:51
(6) Оно стсуко не каноническое. Все душевные порывы затолкать его в DOM обламываются о непарные теги типа <br>, <link> и тому подобное. Можно написать свой парсер под 1С или заюзать сторонние. Но ИМХО более правильно было бы на стороне сайта вместе с HTML формировать XML с чистыми данными. Или хотя бы CSV.


Список тем форума
Рекламное место пустует   Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует