Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Выгрузка данных на сайт из 1с , База 1.77 ТИС помогите с настройкой параметров          
inna.innainna84 Подменю пользователя
сообщение 10.05.16, 21:43
Сообщение #1

Завсегдатай
****
Группа: Пользователи
Сообщений: 108
Спасибо сказали: 2 раз
Рейтинг: 0

//*******************************************

Процедура ВыгрузитьМаршруты()

    
    
    ДокЗапрос = Анализатор.СоздатьДокумент();
    ArrayOfDEX_Import = ДокЗапрос.СоздатьПодчиненныйЭлемент("ArrayOfDEX_Import");
    
     ТТ.Очистить();

    
    ТТ.НоваяКолонка("МаршрутныйЛист", "Строка", 25, ," Документ");
    ТТ.НоваяКолонка("АвтомобильВодитель", "Строка", 30,,"Автомобиль/Водитель");
    ТТ.НоваяКолонка("Клиент", "Строка",50,,"Клиент (тип)");
    ТТ.НоваяКолонка("Заявка");    
    ТТ.НоваяКолонка("НомерЗаявки");
    ТТ.НоваяКолонка("Вес","Число", 10,3);
    ТТ.НоваяКолонка("Пробег","Число", 10,2);
    ТТ.НоваяКолонка("Приезд", "Строка", 10);
    ТТ.НоваяКолонка("Время","Число", 10,0);  
    
    
    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса =
    "//{{ЗАПРОС(Сформировать)    
    |ОбрабатыватьДокументы Проведенные;
    |Период с ДатаМаршрутов по ДатаМаршрутов;
    |ТекДок = Документ.МАРШРУТНЫЙЛИСТ.ТекущийДокумент;
    |Водитель = Документ.МАРШРУТНЫЙЛИСТ.Водитель;
    |Экспедитор = Документ.МАРШРУТНЫЙЛИСТ.Экспедитор;
    |НомерЗаявкиТА=Документ.МАРШРУТНЫЙЛИСТ.НомерЗаявкиТА;
    |Клиент = Документ.МАРШРУТНЫЙЛИСТ.Клиент;
    |Заявка = Документ.МАРШРУТНЫЙЛИСТ.Заявка;
    |Вес = Документ.МАРШРУТНЫЙЛИСТ.Заявка.Вес;  
    |Группировка ТекДок;
    |Группировка Клиент без групп;
    |Группировка Заявка;
    |Условие(ТекДок в ВыбМЛ);
    |"//}}ЗАПРОС
;
    
    Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
        Возврат;
    КонецЕсли;
    
      
        
        
    Пока Запрос.Группировка("ТекДок")=1 Цикл
    Пока Запрос.Группировка("Клиент")=1 Цикл
                   
            ТТ.НоваяСтрока();
            
                ТТ.Клиент =Запрос.Клиент.Наименование;     
                ТТ.НомерЗаявки=Запрос.НомерЗаявкиТА;  
                ТТ.МаршрутныйЛист = ""+Запрос.ТекДок.НомерДок+ " от "+Запрос.ТекДок.ДатаДок;
                ТТ.АвтомобильВодитель = ""+Запрос.ТекДок.Автомобиль.Наименование+" / "+Запрос.ТекДок.Водитель.Наименование;
                ТТ.Заявка=Запрос.Заявка;
             КонецЦикла;        
    КонецЦикла;    
        
        
    Пока Запрос.Группировка("ТекДок")=1 Цикл
    Пока Запрос.Группировка("Клиент")=1 Цикл        
            DEX_Import = ArrayOfDEX_Import.СоздатьПодчиненныйЭлемент("DEX_Import");
            
            
            Route_Num = DEX_Import.СоздатьПодчиненныйЭлемент("Route_Num");
            Route_Num.Текст  = Запрос.ТекДок.НомерДок;
        
            Auto_Id = DEX_Import.СоздатьПодчиненныйЭлемент("Auto_Id");
            Auto_Id.Значение = Запрос.ТекДок.Автомобиль.Код;
            
            Driver_Id=  DEX_Import.СоздатьПодчиненныйЭлемент("Driver_Id");
            Driver_Id.Значение = Запрос.ТекДок.Водитель.Код;
            
            Dispatcher_Id=  DEX_Import.СоздатьПодчиненныйЭлемент("Dispatcher_Id");
            Dispatcher_Id.Значение = Запрос.ТекДок.Экспедитор.Код;
            
            RouteTime_B= DEX_Import.СоздатьПодчиненныйЭлемент("RouteTime_B");
            RouteTime_B.Текст  = СокрЛП(Запрос.ТекДок.Выезд);
            
            Pos_Id = DEX_Import.СоздатьПодчиненныйЭлемент("Pos_Id");
            Pos_Id.Значение =Запрос.ТекДок.НомерСтроки;                  
            

        ////////по маршрутному листу
        
            
            
            
            Comp_Id = DEX_Import.СоздатьПодчиненныйЭлемент("Comp_Id");
            Comp_Id.Значение = Запрос.ТекДок.Клиент.КодСоответствия;                
                
            Comp_Name = DEX_Import.СоздатьПодчиненныйЭлемент("Comp_Name");
            Comp_Name.Текст =Запрос.ТекДок.Клиент. Наименование;
    
            Address = DEX_Import.СоздатьПодчиненныйЭлемент("Address");
            Address.Текст =Запрос.ТекДок.Клиент.ПочтовыйАдрес;
        
            
                lat = DEX_Import.СоздатьПодчиненныйЭлемент("lat");
                lat.Значение =Число(Запрос.ТекДок.Клиент.Широта); // Широта, если известна
            
                
                lng = DEX_Import.СоздатьПодчиненныйЭлемент("lng");
                lng.Значение =Число(Запрос.ТекДок.Клиент.Долгота); // Долгота, если известна
            
            
                TimeWork_Beg = DEX_Import.СоздатьПодчиненныйЭлемент("TimeWork_Beg");
                TimeWork_Beg.Текст  = СокрЛП(Запрос.ТекДок.Клиент.ВремяРаботыНачало);
            
                
                TimeWork_End = DEX_Import.СоздатьПодчиненныйЭлемент("TimeWork_End");
                TimeWork_End.Текст  = СокрЛП(Запрос.ТекДок.Клиент.ВремяРаботыКонец);
            
                
                TimeBreak_Beg = DEX_Import.СоздатьПодчиненныйЭлемент("TimeBreak_Beg");
                TimeBreak_Beg.Текст   =Сред((Запрос.ТекДок.Клиент.ВремяОбедаНачало), 12,5);
            
                
                TimeBreak_End = DEX_Import.СоздатьПодчиненныйЭлемент("TimeBreak_End");
                TimeBreak_End.Текст   = Сред((Запрос.ТекДок.Клиент.ВремяОбедаКонец), 12,5);
            
                    
                    Unload_Time = DEX_Import.СоздатьПодчиненныйЭлемент("Unload_Time");
                    Unload_Time.Значение = СокрЛП(Запрос.ТекДок.ОрганизационоеВремя);        
            
                    
                //    НомерЗаявкиТА="НЕТ"+"-"+(Запрос.Клиент.КодСоответствия+ДатаМаршрутов);
                    Request_Num = DEX_Import.СоздатьПодчиненныйЭлемент("Request_Num");
                    Request_Num.Текст  = Запрос.ТекДок.НомерЗаявкиТА;
                
                    
                    
                    QtyW = DEX_Import.СоздатьПодчиненныйЭлемент("QtyW");
                    QtyW.Значение = Запрос.ТекДок.Вес;     
                    
                    CompGroup_Id = DEX_Import.СоздатьПодчиненныйЭлемент("CompGroup_Id");
                    CompGroup_Id.Значение = Запрос.ТекДок.Клиент.Маршрут.КодСоответствия;
                    
                    CompGroup_Name = DEX_Import.СоздатьПодчиненныйЭлемент("CompGroup_Name");
                    CompGroup_Name.Текст =Запрос.ТекДок.Клиент. Маршрут.Наименование;
                    
                    ProductGroup_Id = DEX_Import.СоздатьПодчиненныйЭлемент("ProductGroup_Id");
                    ProductGroup_Id.Значение = 0; // Группа товаров
    
                        
            
        КонецЦикла;        
                                        
        КонецЦикла;
    
           СтрРез = "";
    
    
    
    
      ПараметрыЗапроса = "Session_Ident="+ИДСессии+
        "&Date_Data="+Формат(ДатаМаршрутов, "ДДДММГГГГ")+"&format=xml&Comps=<?xml version=""1.0""?>" +
        ПреобразоватьСтрокуВУТФ8(ДокЗапрос.ЭлементДокумента.ПредставлениеXML);
    
                          
    Соединение.ОтправитьДляОбработки(АдресСервиса + "/DEX_Import_Routes_JSON", ПараметрыЗапроса, 2, СтрРез, 1);
    
    РезультатЗагрузки = ПреобразоватьСтрокуИзУТФ8(СтрРез);
    
    
КонецПроцедуры  //**************************************


Подскажите пожалуйста как доработать ПараметрыЗапроса согласно этих данных:

Вид запроса:
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


twilight_dream Подменю пользователя
сообщение 29.06.16, 8:37
Сообщение #2

Оратор
*****
Группа: Пользователи
Сообщений: 265
Спасибо сказали: 4 раз
Рейтинг: 0

Непонятно, откуда вдруг берется переменная "СтрРез" и что такое за объект "соединение"?
И почему указываете (я не знаком с форматом строки соединения этого объекта, но всё же как то логично предположить) xml если передавать собираетесь json?


Signature

Спасибо сказали: inna.innainna84,

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 25.04.24, 0:39
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!