|
Выгрузка на сайт УТ 11.2 | ☑ | ||
---|---|---|---|---|
0
zerat
23.08.16
✎
09:00
|
Всем привет! Есть доработанная выгрузка на сайт из УТ 11.2. Выгружаются товары со своими доработанными свойствами, выгружается файл import.xml и добавлялся дополнительный файл для выгрузки на сайт import2.xml. Дело в том что выгрузка import проходит нормально, когда начинается выгрузка import2 то через какое то время выгрузки останавливается и в 1С "Ошибка при выполнении запроса POST к ресурсу". Код выгрузки несколько раз пересматривал, никаких супермега запросов нет, зацикливаний нет. Товаров выгружается в файл import порядка 10000. Еще в этот же файл выгружаются доработанные свойства которые хранятся в непериодическом и независимом регистре сведений. В файл import2 выгружаются те же самые свойства товаров но только для сортировки их на сайте. В import2 выгружается около 392000 свойств...Бьюсь на этой проблемой уже несколько дней, базу тестировал средствами SQL...
|
|||
1
zerat
23.08.16
✎
09:10
|
Может есть какое то ограничение в xml файле?
|
|||
2
mkalimulin
23.08.16
✎
09:27
|
(0) Передаешь 392000 одним POST запросом?
|
|||
3
zerat
23.08.16
✎
09:30
|
Для Каждого ТекСтрока из ДанныеСортировкиНоменклатуры.Строки Цикл
Текст.ДобавитьСтроку(Строка(НомерСтроки) +" ;"+ТекСтрока.Объект.Код+";"+Строка(ТекСтрока.Объект)); Текст.Записать("D:"+"\log.txt"); Сортировка = 1; Для Каждого ТекСвойство из ТекСтрока.Строки Цикл Если НЕ ЗначениеЗаполнено(ТекСвойство.Характеристики) Тогда Продолжить; КонецЕсли; ТоварТип = ПакетCML.Получить("Товар"); ТоварXDTO = ФабрикаXDTO.Создать(ТоварТип); Ид = Строка(ТекСвойство.КлючУникальности); ТоварXDTO.Ид = Ид; ТоварXDTO.Артикул = "-"; ТоварXDTO.Наименование = Ид; ТоварXDTO.БазоваяЕдиница = bsБазоваяЕдиницаXDTO(ТоварXDTO, ТекСтрока.Объект); // Ставка НДС Если ЗначениеЗаполнено(ТекСтрока.Объект.СтавкаНДС) Тогда СтавкиНалоговТип = ПолучитьТипСвойстваОтТипаОбъектаXDTO(ТоварТип, "СтавкиНалогов"); СтавкаНалогаТип = ПолучитьТипСвойстваОтТипаОбъектаXDTO(СтавкиНалоговТип, "СтавкаНалога"); СтавкаНалога = ФабрикаXDTO.Создать(СтавкаНалогаТип); СтавкаНалога.Наименование = НСтр("ru = 'НДС'"); СтавкаНалога.Ставка = СтрЗаменить(Строка(ТекСтрока.Объект.СтавкаНДС), "%",""); СтавкиНалогов = ФабрикаXDTO.Создать(СтавкиНалоговТип); СтавкиНалогов.СтавкаНалога.Добавить(СтавкаНалога); ТоварXDTO.СтавкиНалогов = СтавкиНалогов; КонецЕсли; //ЗначенияСвойств ЗначенияСвойствТип = ТоварXDTO.Свойства().Получить("ЗначенияСвойств").Тип; ЗначенияСвойствXDTO = ФабрикаXDTO.Создать(ЗначенияСвойствТип); //СОРТИРОВКА //ЗначенияСвойства ЗначенияСвойстваXDTO = ФабрикаXDTO.Создать(ПакетCML.Получить("ЗначенияСвойства")); ЗначенияСвойстваXDTO.Ид = Строка("c88b133d-855b-461a-884a-854b1de31fb5"); ЗначениеСвойства = Строка((Сортировка)*10); ЗначенияСвойстваXDTO.Значение.Добавить(ЗначениеСвойства); //ЗначениеСвойства ЗначениеСвойстваXDTO = ФабрикаXDTO.Создать(ПакетCML.Получить("ЗначениеСвойства")); ЗначениеСвойстваXDTO.Значение.Добавить(Строка((Сортировка)*10)); ЗначениеСвойстваXDTO.Описание = Строка((Сортировка)*10); //ЗначенияСвойства добавление ЗначенияСвойстваXDTO.ЗначениеСвойства.Добавить(ЗначениеСвойстваXDTO); ЗначенияСвойствXDTO.ЗначенияСвойства.Добавить(ЗначенияСвойстваXDTO); //ПОДСКАЗКА Подсказка = ТекСвойство.Подсказка; //ЗначенияСвойства ЗначенияСвойстваXDTO = ФабрикаXDTO.Создать(ПакетCML.Получить("ЗначенияСвойства")); ЗначенияСвойстваXDTO.Ид = Строка("d46b858b-bee2-47b8-988f-fdb654abe45e"); ЗначениеСвойства = Подсказка; ЗначенияСвойстваXDTO.Значение.Добавить(ЗначениеСвойства); //ЗначениеСвойства ЗначениеСвойстваXDTO = ФабрикаXDTO.Создать(ПакетCML.Получить("ЗначениеСвойства")); ЗначениеСвойстваXDTO.Значение.Добавить(Подсказка); ЗначениеСвойстваXDTO.Описание = Подсказка; //ЗначенияСвойства добавление ЗначенияСвойстваXDTO.ЗначениеСвойства.Добавить(ЗначениеСвойстваXDTO); ЗначенияСвойствXDTO.ЗначенияСвойства.Добавить(ЗначенияСвойстваXDTO); ТоварXDTO.ЗначенияСвойств = ЗначенияСвойствXDTO; ТоварыXDTO.Товар.Добавить(ТоварXDTO); Сортировка = Сортировка + 1; КонецЦикла; НомерСтроки = НомерСтроки + 1; КонецЦикла; |
|||
4
zerat
23.08.16
✎
09:32
|
Вот этот кусок кода.
ДанныеСортировкиНоменклатуры.Строки - здесь только товары около 9200 Для Каждого ТекСвойство из ТекСтрока.Строки Цикл здесь выгружаются уже свойства каждого товара около 392000 |
|||
5
zerat
23.08.16
✎
09:33
|
(2) я записываю эти данные в xml
|
|||
6
mkalimulin
23.08.16
✎
09:34
|
(4) POST запрос не резиновый.
|
|||
7
mkalimulin
23.08.16
✎
09:34
|
Дели на части.
|
|||
8
zerat
23.08.16
✎
10:05
|
(7) а можешь подробнее рассказать про POST запрос? и какое ограничение на нем? делить на части имеешь ввиду сам xml файлик?
|
|||
9
zerat
23.08.16
✎
13:41
|
ну не фига....разбил сейчас файл на 4 части, все равно ошибка таже самая
|
|||
10
zerat
23.08.16
✎
17:01
|
ап ап
|
|||
11
vicof
23.08.16
✎
17:06
|
Ещё дели. Методом дихотомии сможешь достаточно быстро найти оптимальное число кусков
|
|||
12
zerat
23.08.16
✎
17:38
|
(11) где можно прочитать про размер xml файла или post запроса, я просто не пойму в чем прикол....
|
|||
13
Зая Бусечка
23.08.16
✎
18:19
|
(12) Зависит от настроек сервера и качества связи.
|
|||
14
Злопчинский
23.08.16
✎
18:33
|
Положить н а фтп а оттуда уже сайт сам заберет - не вариант?
|
|||
15
mkalimulin
23.08.16
✎
21:25
|
(12) Нигде. Как сервер настроят так и будет. Это ж интернет. Сам подумай, что будет если запросы не ограничивать.
|
|||
16
zerat
24.08.16
✎
07:03
|
У меня не выгружается локально на диск даже!!!
Он не может сформировать xml файл |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |