Группа: Пользователи
Сообщений: 108
Спасибо сказали: 2 раз
Рейтинг: 0
При работе с этим отчетом вылетаю из базы не сразу а через какое-то время. Можно ли как-то протестировать и узнать где в коде ошибка отладчиком пробывала нигде не останавливается.
Функция ПреобразоватьСтрокуВУТФ8(Стр) Длина=СтрДлина(Стр); Итог=""; Для Н=1 По Длина Цикл Знак=Сред(Стр,Н,1); Код=КодСимв(Знак); Если Код<128 Тогда Итог=Итог+Знак; Иначе Если (Код>=КодСимв("А"))И(Код<=КодСимв("п")) Тогда Итог=Итог+Симв(208)+Симв(144+Код-КодСимв("А")); ИначеЕсли (Код>=КодСимв("р"))И(Код<=КодСимв("я")) Тогда Итог=Итог+Симв(209)+Симв(128+Код-КодСимв("р")); ИначеЕсли (Знак="ё") Тогда Итог=Итог+Симв(209)+Симв(145); ИначеЕсли (Знак="Ё") Тогда Итог=Итог+Симв(208)+Симв(129); КонецЕсли; КонецЕсли; КонецЦикла; Возврат Итог; КонецФункции
Функция ПреобразоватьСтрокуИзУТФ8(Стр) Длина=СтрДлина(Стр); Итог=""; Для Н=1 По Длина Цикл Знак=Сред(Стр,Н,1); Код=КодСимв(Знак); Если Код<128 Тогда Итог=Итог+Знак; ИначеЕсли (Код>=128)И(Код<192) Тогда Иначе Н=Н+1; Знак2=Сред(Стр,Н,1); Код2=КодСимв(Знак2); Если Код=208 Тогда Если Код2=129 Тогда Итог=Итог+"Ё"; Иначе Итог=Итог+Симв(КодСимв("А")+Код2-144); КонецЕсли; ИначеЕсли Код=209 Тогда Если Код2=145 Тогда Итог=Итог+"ё"; Иначе Итог=Итог+Симв(КодСимв("р")+Код2-128); КонецЕсли; КонецЕсли; КонецЕсли; КонецЦикла; Возврат Итог; КонецФункции
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда Возврат Док; КонецЕсли;
Пока Запрос.Группировка()=1 Цикл Если (Запрос.НомМаршрута = ВыбНомерМаршрута) И (Запрос.ТекДок.ПометкаУдаления() <> 1) Тогда Док = Запрос.ТекДок; Возврат Док; КонецЕсли; КонецЦикла;
Возврат Док;
КонецФункции // гл
//******************************************* Процедура ИзменениеСпМЛ(зн) Если зн=1 тогда Конт = ""; ОткрытьПодбор("Журнал.Транспорт",,Конт); //УстановитьИнтервал (ДатаДок, ДатаДок,1);
ИначеЕсли зн=2 тогда Стр = ВыбМЛ.ТекущаяСтрока(); Если стр>0 тогда ВыбМЛ.УдалитьЗначение(Стр); КонецЕсли; ИначеЕсли зн=3 тогда ВыбМЛ.УдалитьВсе(); КонецЕсли; КонецПроцедуры
//******************************************* Процедура ОбработкаПодбора(Эл,Конт) Если Эл.Вид()="МАРШРУТНЫЙЛИСТ" Тогда Если ВыбМЛ.Принадлежит(Эл.ТекущийДокумент()) = 1 Тогда Сообщить("Этот Документ уже присутствует в списке"); СтатусВозврата(0); Возврат; КонецЕсли; ВыбМЛ.ДобавитьЗначение(Эл.ТекущийДокумент(), "МЛ № "+Эл.ТекущийДокумент().НомерДок+ "("+Эл.ТекущийДокумент().ДатаДок+")"+Эл.ТекущийДокумент().Менеджер);
Пока Запрос.Группировка("ТекДок")=1 Цикл Пока Запрос.Группировка("Клиент")=1 Цикл DEX_Import = ArrayOfDEX_Import.СоздатьПодчиненныйЭлемент("DEX_Import");
Пока Запрос.Группировка("НомерЗаявкиТА")=1 Цикл ////////по маршрутному листу DEX_Import1 = ArrayOfDEX_Import_Comps.СоздатьПодчиненныйЭлемент("DEX_Import_Comps");
// Цикл по выборке // Для примера используем один эдемент
Запрос=СоздатьОбъект("Запрос");
ТекстЗапроса=" |ПЕРИОД С ДатаМаршрутов По ДатаМаршрутов; |Клиент = Справочник.Контрагенты.ТекущийЭлемент; |Группировка Клиент без групп упорядочить по Клиент.Наименование; |";
Если глФильтрПоСправочнику("Контрагенты",0,0,ВыбКатегорияКонтрагентов,0,0,СписокКонтрагентов,ТекстЗапроса,0,0,"Клиент,,,СписокКонтрагентов,,,,,")=0 Тогда Возврат; КонецЕсли;
Если Запрос.Выполнить(ТекстЗапроса)=0 тогда Предупреждение("Запрос по Партиям не выполнился!"); Возврат; КонецЕсли;
Пока Запрос.Группировка("Клиент")=1 Цикл DEX_Import = ArrayOfDEX_Import.СоздатьПодчиненныйЭлемент("DEX_Import");
Если XMLParser.selectNodes("//ErrorResponse").item(0).Text <> "OK" Тогда Предупреждение("Ошибка. Данные не загружены."); Возврат; Иначе Если Фл = 0 Тогда РезультатЗагрузки = XMLParser.selectNodes("//ErrorResponse").item(0).Text; КонецЕсли; КонецЕсли;
// нужно перебирать маршруты и создавать новые Документы
Для ххх = 0 По SelNodes.Length - 1 Цикл nodeNode = SelNodes.Item(ххх);
Если nodeNode.childNodes.length > 0 Тогда ТЗМаршрутов.НоваяСтрока(); Для хх = 0 По nodeNode.childNodes.length - 1 Цикл
Если nodeNode.childNodes(хх).nodeName = "Route_Num" Тогда ТЗМаршрутов.НомерМаршрута = Число(nodeNode.childNodes(хх).Text); ИначеЕсли nodeNode.childNodes(хх).nodeName = "Auto_Id" Тогда ТЗМаршрутов.АвтоИд = Число(nodeNode.childNodes(хх).Text); ИначеЕсли nodeNode.childNodes(хх).nodeName = "Count_Comps" Тогда ТЗМаршрутов.КолвоТочек = Число(nodeNode.childNodes(хх).Text); ИначеЕсли nodeNode.childNodes(хх).nodeName = "Driver_Id" Тогда ТЗМаршрутов.ВодительИд = Число(nodeNode.childNodes(хх).Text); ИначеЕсли nodeNode.childNodes(хх).nodeName = "Dispatcher_Id" Тогда ТЗМаршрутов.ЭкспедиторИд = Число(nodeNode.childNodes(хх).Text); ИначеЕсли nodeNode.childNodes(хх).nodeName = "RouteTime_B" Тогда ТЗМаршрутов.ВремяНач = Число(nodeNode.childNodes(хх).Text); ИначеЕсли nodeNode.childNodes(хх).nodeName = "RouteTime_E" Тогда ТЗМаршрутов.ВремяОкон = Число(nodeNode.childNodes(хх).Text); ИначеЕсли nodeNode.childNodes(хх).nodeName = "Travel_Duration" Тогда ТЗМаршрутов.ВремяДвиженияМин = Число(nodeNode.childNodes(хх).Text); ИначеЕсли nodeNode.childNodes(хх).nodeName = "distance" Тогда ТЗМаршрутов.ПробегМетр = Число(nodeNode.childNodes(хх).Text); КонецЕсли; КонецЦикла; КонецЕсли; КонецЦикла;
ТекМаршрут = 0;
SelNodes2 = XMLParser.selectNodes("//DEX_Comps");
Для ххх = 0 По SelNodes2.Length - 1 Цикл nodeNode2 = SelNodes2.Item(ххх);
Если nodeNode2.childNodes.length > 0 Тогда Если Число(nodeNode2.selectNodes ("//Route_Num").item(ххх).Text) <> ТекМаршрут Тогда ТТ.НоваяСтрока(); ТекМаршрут = Число(nodeNode2.selectNodes ("//Route_Num").item(ххх).Text); Попытка Док.Записать(); Исключение КонецПопытки;
//проверка если уже импортирован маршрут ТекДокМаршрут = УжеЗагружен (ДатаМаршрутов, ТЗМаршрутов.НомерМаршрута); Если ПустоеЗначение(ТекДокМаршрут) = 1 Тогда Док.Новый(); Док.ДатаДок= ДатаМаршрутов; Док.Записать(); Иначе Если Вопрос("Маршрут № "+ТекМаршрут+" уже записан (Маршрутный лист № "+ТекДокМаршрут.Номердок+"). ПЕРЕЗАПИСАТЬ?", "Да+Нет") = "Да" Тогда Если Док1.НайтиПономеру(ТекДокМаршрут.НомерДок,ДатаМаршрутов) = 1 Тогда Док = Док1; Если Док.Проведен()=1 Тогда Док.СделатьНеПроведенным(); КонецЕсли; Док.УдалитьСтроки();
Док.Записать(); КонецЕсли; КонецЕсли; КонецЕсли;
Попытка Док.Записать(); Сообщить("Записан документ "+ Док); Исключение КонецПопытки;
стр = 0; Если ТЗМаршрутов.НайтиЗначение(ТекМаршрут, стр,"НомерМаршрута") = 1 Тогда ТЗМаршрутов.ПолучитьСтрокуПоНомеру(стр); Если СпрМашин.НайтиПоКоду(ТЗМаршрутов.АвтоИд) <> 1 Тогда Сообщить("Не найден автомобиль с кодом "+ ТЗМаршрутов.АвтоИд); Иначе Док.Автомобиль = СпрМашин.ТекущийЭлемент(); КонецЕсли;
Если СпрВодители.НайтиПоКоду(ТЗМаршрутов.ВодительИд) <> 1 Тогда Сообщить("Не найден водитель с кодом "+ ТЗМаршрутов.ВодительИд); Иначе Док.Водитель = СпрВодители.ТекущийЭлемент(); КонецЕсли;
Если СпрВодители.НайтиПоКоду(ТЗМаршрутов.ЭкспедиторИд) <> 1 Тогда Сообщить("Не найден экспедитор с кодом "+ ТЗМаршрутов.ЭкспедиторИд); Иначе Док.Экспедитор = СпрВодители.ТекущийЭлемент(); КонецЕсли;
Попытка Док.Записать(); Исключение КонецПопытки; КонецПроцедуры
Процедура ПриВыбореЗакладки(Выб) Если Выб=1 Тогда Форма.ИспользоватьСлой("Основной,Общий"); иначеесли Выб=2 тогда Форма.ИспользоватьСлой("ТекстЗагрузки,Общий"); КонецЕсли; конецпроцедуры
Процедура ПриОткрытии()
ФлЗагрузитьВнешнююКомпоненту = 0; Если ЗагрузитьВнешнююКомпоненту("C:\Users\Public\CARS\v7plus.dll") = 1 Тогда ФлЗагрузитьВнешнююКомпоненту = 1; ИначеЕсли ЗагрузитьВнешнююКомпоненту("C:\v7plus.dll") = 1 Тогда ФлЗагрузитьВнешнююКомпоненту = 1; КонецЕсли;
Если ФлЗагрузитьВнешнююКомпоненту = 0 Тогда Сообщить("Не удалось обнаружить компоненту v7plus.dll!"); СтатусВозврата(0); Возврат; КонецЕсли;
Попытка Соединение = СоздатьОбъект("Addin.V7HttpReader"); Соединение.КоличествоПопытокАвторизации = 3; Исключение Сообщить("Не удалось создать объект Addin.V7HttpReader!"); СтатусВозврата(0); Возврат; КонецПопытки;
Попытка Анализатор = СоздатьОбъект("AddIn.XMLParser"); Исключение Сообщить("Не удалось создать объект Addin.XMLParser!"); СтатусВозврата(0); Возврат; КонецПопытки;
Группа: Местный
Сообщений: 298
Спасибо сказали: 98 раз
Рейтинг: 0
А это "чудо" у Вас, это лично мое мнение, летать корректно не будет, даже если все исправите. Аргументирую тем что используете объект "Addin.V7HttpReader" создающийся "глючной" v7plus.dll. Лучше всего строить POST-запросы используя объект "WinHttp.WinHttpRequest.5.1".
По-поводу отлатки: Повставляйте в процедуры (их у Вас немного), что-то типа:
Процедура Название процедуры() Сообщить ("Начато выполнение Название процедуры","i"); ///Ваш код Сообщить ("Выполнено Название процедуры","i"); КонецПроцедуры
То, что для одного человека константа, для другого - переменная. (Алан.Дж.Перлис)
// Цикл по выборке // Для примера используем один эдемент
Запрос=СоздатьОбъект("Запрос");
ТекстЗапроса=" |ПЕРИОД С ДатаМаршрутов По ДатаМаршрутов; |Клиент = Справочник.Контрагенты.ТекущийЭлемент; |Группировка Клиент без групп упорядочить по Клиент.Наименование; |";
Если глФильтрПоСправочнику("Контрагенты",0,0,ВыбКатегорияКонтрагентов,0,0,СписокКонтрагентов,ТекстЗапроса,0,0,"Клиент,,,СписокКонтрагентов,,,,,")=0 Тогда Возврат; КонецЕсли;
Если Запрос.Выполнить(ТекстЗапроса)=0 тогда Предупреждение("Запрос по Партиям не выполнился!"); Возврат; КонецЕсли;
Пока Запрос.Группировка("Клиент")=1 Цикл DEX_Import = ArrayOfDEX_Import.СоздатьПодчиненныйЭлемент("DEX_Import");
Группа: Местный
Сообщений: 298
Спасибо сказали: 98 раз
Рейтинг: 0
inna.innainna84 @ Сегодня, 7:42 ,
Ну что же: 1. Сначала постройте правильный запрос по маршрутам, а то у Вас там чепуха. 2. Нужно описание формата для построения данных в формате json, на основании описания создавайте ТЗ и заполните ее из запроса. 3. Не забывайте о правилах, создайте новую тему, так как это уже совершенно другая проблема (Правила).
Выведем потихоньку Вас на нужный маршрут, только долго это все будет.
То, что для одного человека константа, для другого - переменная. (Алан.Дж.Перлис)
Группа: Пользователи
Сообщений: 108
Спасибо сказали: 2 раз
Рейтинг: 0
Sharzem @ Сегодня, 9:11 , Извините пожалуйста я в этом не сильно разбираюсь, Мы нанимали человека который это писал. Скажите какую из процедур вы считаете "чепухой" .
Вот пример построения Процедуры ВыгрузитьИПровестиМаршруты()
Загрузка маршрутов
Вид запроса: POST
Описание: Передает на сервер список готовых маршрутов. Данные передаются в виде списка маршрутов и списка точек для каждого из этих маршрутов.
Команда: DEX_Import_Routes_JSON
Параметры: ● Session_Ident - идентификатор сессии ● Date_Data - дата общего списка заявок. Формат: "dd.MM.yyyy" ● Ext_Ident - идентификатор всего списка заявок (не обязательный) ● TSM_Calc - действие, которое нужно выполнить с загруженными маршрутами (0 - посчитать маршрут, без оптимизации | 1 - оптимизировать маршрут), параметр не обязательный, по умолчанию расчет не выполняется ● Add_Template - добавлять шаблон маршрута (0 или 1, не обязательный, по умолчанию добавляется) ● Remove - удалить или нет загружаемые маршруты (0 или 1, не обязательный, по умолчанию 0) ● SyncComps - выполнять синхронизацию точек, или точки уже точно есть в системе (0 или 1, не обязательный, по умолчанию 0) ● Update_GeoCoord - обновлять или нет координаты точек (широты и долготу), на те которые загружаются из учетной системы (по умолчанию 1) ● Routes - список маршрутов ● Comps - список точек маршрута.
Возвращаемый результат: JSON
{ ErrorResponse { "error": <int>, /*код ошибки, 0 - нет ошибки*/ "msg": <text> /*подробное сообщение об ошибке*/ } }
*метод возвращает и другие поля, но они для API не нужны
Пример: Запрос: [необходимо зарегистрироваться для просмотра ссылки]
Параметры в теле запроса: Session_Ident=1B1CFA8D-FA4B-43FD-BFFB-64C6627DB357&Date_Data=02.08.2014&Routes=[{"”}]
Группа: Местный
Сообщений: 298
Спасибо сказали: 98 раз
Рейтинг: 0
Цитата(inna.innainna84 @ 19.05.16, 9:20)
Скажите какую из процедур вы считаете "чепухой"
ВыгрузитьКонтрагентов() - то что Вы указали в теме.
ТекстЗапроса=" |ПЕРИОД С ДатаМаршрутов По ДатаМаршрутов; //Какой период если ссылки на документы нет ? |Клиент = Справочник.Контрагенты.ТекущийЭлемент; |Группировка Клиент без групп упорядочить по Клиент.Наименование; //Запрос без счетчика или функции выполнится только при выгрузке в ТЗ, но ее нет |";
//1. ВыбКатегорияКонтрагентов - не объявленая переменная, ранее в глобальных я ее не видел //2. У Вас функция в глобальном модуле формирует ТекстЗапроса ? - СОМНЕВАЮСЬ
Если глФильтрПоСправочнику("Контрагенты",0,0,ВыбКатегорияКонтрагентов,0,0,СписокКонтрагентов,ТекстЗапроса,0,0,"Клиент,,,СписокКонтрагентов,,,,,")=0 Тогда Возврат;//Не указаны причины прекращения Процедуры, откуда Вы будете знать почему не работает КонецЕсли;
Если Запрос.Выполнить(ТекстЗапроса)=0 тогда Предупреждение("Запрос по Партиям не выполнился!");//// Какие партии ???? Возврат; КонецЕсли;
Цитирую сам себя: "Сначала постройте правильный запрос по маршрутам..." Я так понимаю, что в запросе должны присутствовать Документы "Маршрутный лист" или еще как он там называется и исходя из выборки за период, Вы отдаете на сайт информацию.
Вы технический специалист или Пользователь ? Почему не обратитесь к своему человеку который Вам это все писал ?
Это форум, тут на Ваши вопросы дадут ответы, но никто Вам не гарантирует что они Вас удовлетворят на 100 %, далее, Вы все делаете сами и решения тоже принимаете сами.
То, что для одного человека константа, для другого - переменная. (Алан.Дж.Перлис)
Группа: Пользователи
Сообщений: 108
Спасибо сказали: 2 раз
Рейтинг: 0
Да я поняла. Эта процедура выгружает информацию из справочника, не через документ. В принципе эта процедура не нужна. Меня больше интересует ваше мнение о Процедуре ВыгрузитьИПровестиМаршруты(),
Группа: Пользователи
Сообщений: 108
Спасибо сказали: 2 раз
Рейтинг: 0
Sharzem @ Сегодня, 12:08 , Блин я не знаю что делать , скажите что нужно менять процедуры и запросы по этому документу ,или же нужно менять v7plus.dll. на WinHttp.WinHttpRequest.5.1
Группа: Местный
Сообщений: 298
Спасибо сказали: 98 раз
Рейтинг: 0
Ловите, исправил одни ошибки намножил другие. Запрос 1 С теперь должен норм. выполниться, xml будет сохранен и 1 С не вылетит. У xml, мне кажется неправильная структура, поэтому сможете его посмотреть, оно сообщит о месте сохранения. Убрал в запросе Группировку НомерЗаявкиТА, она не нужна. Post-запрос не трогал, посмотрите как отработает (оно сообщит). Если что напишите.
Группа: Пользователи
Сообщений: 108
Спасибо сказали: 2 раз
Рейтинг: 0
Sharzem @ Сегодня, 16:44 , Отчет работает, если будет отключать 1с напишу. Вот единственное я не пойму почему- то не правильно преобразовуются текстовые значения вместо букв иероглифы, это ошибка была изначально.
Группа: Местный
Сообщений: 298
Спасибо сказали: 98 раз
Рейтинг: 0
1. Это не ошибка. Иероглифы это текст в UTF-8. 2. Воспользуйтесь Функцией ОтправитьПостЗапрос(прАдрес,прФайл) и все будет норм.
В модуле процедуры после строк:
///Получаемая строка превысит допустимые размеры - это в сообщении, строка более 450 символов // нужно здесь закоментировать, поскольку не влазит в окно сообщений
// лпРазмерСписка = лпСписокСообщенийRoutes.РазмерСписка(); // Сообщить("Данные Routes :","!!!"); // Для лпНомерСтроки = 1 По лпРазмерСписка Цикл // лпСтрока = лпСписокСообщенийRoutes.ПолучитьЗначение(лпНомерСтроки); // Сообщить(лпСтрока,"i"); // КонецЦикла;
// лпРазмерСписка = лпСписокСообщенийComps.РазмерСписка(); // Сообщить("Данные Routes :","!!!"); // Для лпНомерСтроки = 1 По лпРазмерСписка Цикл // лпСтрока = лпСписокСообщенийComps.ПолучитьЗначение(лпНомерСтроки); // Сообщить(лпСтрока,"i"); // КонецЦикла;
//ДОБАВЛЯЕМ // АдресСервиса - Это глобальная переменная ? //Если да то:
Если ФС.СуществуетФайл(лпИмяФайлаОбменаRoutes) = 0 или ФС.СуществуетФайл(лпИмяФайлаОбменаComps) = 0 Тогда Предупреждение("Ошибка соранения отчета !",10); Возврат; КонецЕсли;
лпАдресСервиса = АдресСервиса+"/DEX_Import_Routes_JSON"; Если ОтправитьПостЗапрос(лпАдресСервиса,лпИмяФайлаОбменаRoutes) = 1 Тогда Если ОтправитьПостЗапрос(лпАдресСервиса,лпИмяФайлаОбменаComps) = 1 Тогда Предупреждение("Все отправлено, хлопаем в ладошки !",10) КонецЕсли; Иначе Предупреждение ("Вилы в запросе, нужно еще смотреть что не так !",10); КонецЕсли;
Возврат; ///Весь модуль ниже не актуален
Кстати, для просмотра текста в UTF-8 есть класный редактор "Notepad++". Тем более что иногда нужно смотреть текст в UTF-8 (без Bom) - незаменимая вещь в определении наличия или отсутствия Bom.
Думаю что рассматриваемый Post-запрос умрет и Вы начнете все же обмениваться в формате Joison, он удобней для таких вещей. Нужно Вам только поплотней с специалистами которые Вам рекомендуют существующий обмен пообщаться, у ни он 100 % реализован.
Сообщение отредактировал Sharzem - 19.05.16, 18:00
То, что для одного человека константа, для другого - переменная. (Алан.Дж.Перлис)
Группа: Пользователи
Сообщений: 108
Спасибо сказали: 2 раз
Рейтинг: 0
Sharzem @ Сегодня, 18:50 , Извините пожалуйста что я вас наверное уже достала ничего не пойму файлы сохраняются на комп. но не напрямую на сайт Отключает 1с при нажатии даже кнопки закрыть отчет, скорей всего эта ошибка в начале в одной из процедур пас() или авторизация() или же в функциях
Если ОтправитьПостЗапрос(лпАдресСервиса,лпИмяФайлаОбменаRoutes) = 1 Тогда Если ОтправитьПостЗапрос(лпАдресСервиса,лпИмяФайлаОбменаComps) = 1 Тогда Предупреждение("Все отправлено, хлопаем в ладошки !",10) КонецЕсли; Иначе Предупреждение ("Вилы в запросе, нужно еще смотреть что не так !",10); КонецЕсли;
Если (ФС.СуществуетФайл(лпИмяФайлаОбменаRoutes) = 0) или (ФС.СуществуетФайл(лпИмяФайлаОбменаComps) = 0) Тогда Предупреждение("Ошибка сохранения отчета !",10); Возврат; КонецЕсли; //Нужно перенести после строк: Routes.Записать(лпИмяФайлаОбменаRoutes); Comps.Записать(лпИмяФайлаОбменаComps);
Sharzem @ Сегодня, 10:14 ,
Функция ОтправитьПостЗапрос(лпАдресСервиса,лпИмяФайлаОбменаRoutes) работать не будет, поскольку в АдресСервиса не те данные.
Во как накуралесил ... Рассматривал одну процедуру, поскольку не ознакомился с полным текстом из 1 поста. Туточки пока тупик и куча вопросов... Предлагаю на мыло Sharzem@yandex.ru кинуть саму обработку и тех.описание по работе с сервисом. Если будете сбрасывать и боитесь за конфиденциальность пароли, личные данные, адреса в обработке замените символами ххххх, чтобы я понял что это не переменные.
Извините, но более дальше помочь не могу.
То, что для одного человека константа, для другого - переменная. (Алан.Дж.Перлис)
Группа: Пользователи
Сообщений: 108
Спасибо сказали: 2 раз
Рейтинг: 0
Sharzem @ Сегодня, 11:14 , А зачем это комментировать? это же необходимо для работы с сайтом ПараметрыЗапроса ="Session_Ident="+ИДСессии+ // "&Date_Data="+Формат(ДатаМаршрутов, "ДДДММГГГГ")+"&Add_Template=0&TSM_Calc=1&Remove=1&SyncComps=1&format=xml&Routes=<?xml version=""1.0""?>"+ // ПреобразоватьСтрокуВУТФ8(Routes.ЭлементДокумента.ПредставлениеXML)+ // "&Comps=<?xml version=""1.0""?>"+ПреобразоватьСтрокуВУТФ8(Comps.ЭлементДокумента.ПредставлениеXML);
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!