Версия для печати темы (https://pro1c.org.ua/index.php?s=0b4b1ff361b02a1af2e8d8fcedcc8f07&showtopic=61601)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 8.3 _ Запись элементов справочника через СериализаторXDTO в формат json

Автор: svetas_l 16.09.20, 12:00

Добрый день!
помогите найти ошибку ругается несоответствие типов параметр 3 в строке

" СериализаторXDTO.ЗаписатьJSON(ЗаписьJSON,Массив_записи,НастройкиСериализации); "


Код
    Запрос = Новый Запрос;
    Запрос.Текст =
                "ВЫБРАТЬ *
                 |ИЗ
                | Справочник.Организации КАК Организации
                |";
           
    ЗаписьJSON= Новый ЗаписьJSON;
    ЗаписьJSON.ПроверятьСтруктуру = Истина;
    НастройкиСериализации = Новый НастройкиСериализацииJSON;
    ПараметрыJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Авто, " ", Истина);
    НастройкиСериализации.ВариантЗаписиДаты = ВариантЗаписиДатыJSON.УниверсальнаяДата;
    // НастройкиСериализации.ФорматСериализацииДат = ФорматДатыJSON.ISO;
    НастройкиСериализации.СериализовыватьМассивыКакОбъекты = Истина;    

    Выборка = Запрос.Выполнить().Выбрать();
    ЗаписьJSON.ОткрытьФайл("E:\Odecom\test.json, , , ПараметрыJSON");                                
    ЗаписьJSON.ЗаписатьНачалоОбъекта();
    
    // ЗаписьJSON.ЗаписатьИмяСвойства("ДатаФормирования");
    //ЗаписьJSON.ЗаписатьЗначение(ЗаписатьДатуJSON(ТекущаяДата(), ФорматДатыJSON.ISO, ВариантЗаписиДатыJSON.УниверсальнаяДата));
    
    ЗаписьJSON.ЗаписатьИмяСвойства("Массив_записи");
    Массив_записи =Новый массив;
                                  
    Пока Выборка.Следующий() Цикл
        
        
        ОписаниеОбъекта = Новый Структура("Ссылка, Код, Наименование, Префикс,ИНН,НомерСвидетельства,КодПоЕДРПОУ,ФизическоеЛицо,НаименованиеПолное,СвидетельствоСерияНомер,СвидетельствоДатаВыдачи,БанковскийСчетПоУмолчанию,ЮрФизЛицо,ТекущийРуководитель,ТекущаяДолжностьРук
оводителя,ТекущийГлавныйБухгалтер,ТекущийКассир,ТекущийПаспортист,ТипОрганизации,УчетнаяЗаписьЭлектроннойПочты,НазваниеДляСвернутыхУслуг,ИнформацияПредупреждениеНовойКвитанции");
        ОписаниеОбъекта.Ссылка = Строка(Выборка.Ссылка);
        ОписаниеОбъекта.Код=Строка(Выборка.Код);
        ОписаниеОбъекта.Наименование=Строка(Выборка.Наименование);
        ОписаниеОбъекта.Префикс=Строка(Выборка.Префикс);
        ОписаниеОбъекта.ИНН=Строка(Выборка.ИНН);
        ОписаниеОбъекта.НомерСвидетельства=Строка(Выборка.НомерСвидетельства);
        ОписаниеОбъекта.КодПоЕДРПОУ=Строка(Выборка.КодПоЕДРПОУ);
        ОписаниеОбъекта.ФизическоеЛицо=Строка(Выборка.ФизическоеЛицо);
        ОписаниеОбъекта.НаименованиеПолное=Строка(Выборка.НаименованиеПолное);
        ОписаниеОбъекта.СвидетельствоСерияНомер=Строка(Выборка.СвидетельствоСерияНомер);
        ОписаниеОбъекта.СвидетельствоДатаВыдачи=Строка(Выборка.СвидетельствоДатаВыдачи);
        ОписаниеОбъекта.БанковскийСчетПоУмолчанию=Строка(Выборка.БанковскийСчетПоУмолчанию);
        ОписаниеОбъекта.ЮрФизЛицо=Строка(Выборка.ЮрФизЛицо);
        ОписаниеОбъекта.ТекущийРуководитель=Строка(Выборка.ТекущийРуководитель);
        ОписаниеОбъекта.ТекущаяДолжностьРуководителя=Строка(Выборка.ТекущаяДолжностьРуководителя);
        ОписаниеОбъекта.ТекущийГлавныйБухгалтер=Строка(Выборка.ТекущийГлавныйБухгалтер);
        ОписаниеОбъекта.ТекущийКассир=Строка(Выборка.ТекущийКассир);
        ОписаниеОбъекта.ТекущийПаспортист=Строка(Выборка.ТекущийПаспортист);
        ОписаниеОбъекта.ТипОрганизации=Строка(Выборка.ТипОрганизации);
        ОписаниеОбъекта.УчетнаяЗаписьЭлектроннойПочты=Строка(Выборка.УчетнаяЗаписьЭлектроннойПочты);
        ОписаниеОбъекта.НазваниеДляСвернутыхУслуг=Строка(Выборка.НазваниеДляСвернутыхУслуг);
        ОписаниеОбъекта.ИнформацияПредупреждениеНовойКвитанции=Строка(Выборка.ИнформацияПредупреждениеНовойКвитанции);
             // ОписаниеОбъекта.Контрагент = Строка(Заказ.Контрагент);
        Массив_записи.Добавить(ОписаниеОбъекта);
    КонецЦикла;
      
      
       СериализаторXDTO.ЗаписатьJSON(ЗаписьJSON,Массив_записи,НастройкиСериализации);     //НастройкиСериализации
       ЗаписьJSON.ЗаписатьКонецОбъекта();

Автор: Vofka 16.09.20, 13:08

ЗаписьJSON.ОткрытьФайл("E:\Odecom\test.json, , , ПараметрыJSON");

Это как?

Автор: svetas_l 17.09.20, 10:55

спасибо всем нашла ошибку

&НаСервере
Процедура Команда1НаСервере()
    Запрос = Новый Запрос;
    Запрос.Текст =
                "ВЫБРАТЬ *
                 |ИЗ
                | Справочник.Организации КАК Организации
                |";
          Выборка = Запрос.Выполнить().Выбрать();
         Массив_записи =Новый массив;
                                  
     Пока Выборка.Следующий() Цикл

        ОписаниеОбъекта = Новый Структура("Ссылка, Код, Наименование, Префикс,ИНН,НомерСвидетельства,КодПоЕДРПОУ,ФизическоеЛицо,НаименованиеПолное,СвидетельствоСерияНомер,СвидетельствоДатаВыдачи,БанковскийСчетПоУмолчанию,ЮрФизЛицо,ТекущийРуководитель,ТекущаяДолжностьРук
оводителя,ТекущийГлавныйБухгалтер,ТекущийКассир,ТекущийПаспортист,ТипОрганизации,УчетнаяЗаписьЭлектроннойПочты,НазваниеДляСвернутыхУслуг,ИнформацияПредупреждениеНовойКвитанции");
        ОписаниеОбъекта.Ссылка = Строка(Выборка.Ссылка);
        ОписаниеОбъекта.Код=Строка(Выборка.Код);
        ОписаниеОбъекта.Наименование=Строка(Выборка.Наименование);
        ОписаниеОбъекта.Префикс=Строка(Выборка.Префикс);
        ОписаниеОбъекта.ИНН=Строка(Выборка.ИНН);
        ОписаниеОбъекта.НомерСвидетельства=Строка(Выборка.НомерСвидетельства);
        ОписаниеОбъекта.КодПоЕДРПОУ=Строка(Выборка.КодПоЕДРПОУ);
        ОписаниеОбъекта.ФизическоеЛицо=Строка(Выборка.ФизическоеЛицо);
        ОписаниеОбъекта.НаименованиеПолное=Строка(Выборка.НаименованиеПолное);
        ОписаниеОбъекта.СвидетельствоСерияНомер=Строка(Выборка.СвидетельствоСерияНомер);
        ОписаниеОбъекта.СвидетельствоДатаВыдачи=Строка(Выборка.СвидетельствоДатаВыдачи);
        ОписаниеОбъекта.БанковскийСчетПоУмолчанию=Строка(Выборка.БанковскийСчетПоУмолчанию);
        ОписаниеОбъекта.ЮрФизЛицо=Строка(Выборка.ЮрФизЛицо);
        ОписаниеОбъекта.ТекущийРуководитель=Строка(Выборка.ТекущийРуководитель);
        ОписаниеОбъекта.ТекущаяДолжностьРуководителя=Строка(Выборка.ТекущаяДолжностьРуководителя);
        ОписаниеОбъекта.ТекущийГлавныйБухгалтер=Строка(Выборка.ТекущийГлавныйБухгалтер);
        ОписаниеОбъекта.ТекущийКассир=Строка(Выборка.ТекущийКассир);
        ОписаниеОбъекта.ТекущийПаспортист=Строка(Выборка.ТекущийПаспортист);
        ОписаниеОбъекта.ТипОрганизации=Строка(Выборка.ТипОрганизации);
        ОписаниеОбъекта.УчетнаяЗаписьЭлектроннойПочты=Строка(Выборка.УчетнаяЗаписьЭлектроннойПочты);
        ОписаниеОбъекта.НазваниеДляСвернутыхУслуг=Строка(Выборка.НазваниеДляСвернутыхУслуг);
        ОписаниеОбъекта.ИнформацияПредупреждениеНовойКвитанции=Строка(Выборка.ИнформацияПредупреждениеНовойКвитанции);
        Массив_записи.Добавить(ОписаниеОбъекта);
      
  КонецЦикла;
         Запись_в_JSON(Массив_записи,"test");
  КонецПроцедуры
  
процедура  Запись_в_JSON(Массив_записи,имя_файла)
     ЗаписьJSON= Новый ЗаписьJSON;
     ЗаписьJSON.ПроверятьСтруктуру = Истина;
     НастройкиСериализации = Новый НастройкиСериализацииJSON;
     ПараметрыJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Авто, " ", Истина);
     НастройкиСериализации.ВариантЗаписиДаты = ВариантЗаписиДатыJSON.УниверсальнаяДата;
     НастройкиСериализации.СериализовыватьМассивыКакОбъекты = Истина;    
     ЗаписьJSON.ОткрытьФайл(Этаформа.ПутьЗаписи+имя_файла+".json");       // , , , ПараметрыJSON                        
     ЗаписьJSON.ЗаписатьНачалоОбъекта();
     ЗаписьJSON.ЗаписатьИмяСвойства("Массив_записи");
     СериализаторXDTO.ЗаписатьJSON(ЗаписьJSON,Массив_записи,НазначениеТипаXML.Явное);     //НастройкиСериализации
     ЗаписьJSON.ЗаписатьКонецОбъекта();
     ЗаписьJSON.Закрыть();

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

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua