|   |   | 
| 
 | Вопрос от чайника про ЗаписьJSON | ☑ | ||
|---|---|---|---|---|
| 0
    
        petya_ petrov_63 28.11.23✎ 13:32 | 
        Ну коли мне статус поставили чайника, то можно и вопросы чайника задавать не стесняясь )
 Есть код &НаСервере Функция ПреобразованиеЗначения(Свойство,Значение, ДопПаратметры,Отказ) Экспорт Рез = ""; Возврат Рез; КонецФункции &НаСервере Функция СтруктураЗапроса() Результат = Новый Структура(); Результат.Вставить("НомерДоговора",""); Результат.Вставить("ДатаДоговора",Дата(1,1,1)); Результат.Вставить("АдресСтрока",""); Результат.Вставить("Имя",""); Результат.Вставить("Фамилия",""); Результат.Вставить("Отчество",""); Результат.Вставить("Телефон",""); Результат.Вставить("ВидДоговора",""); Возврат Результат; КонецФункции Запись = Новый ЗаписьJSON; ПараметрыЗаписиJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет); Запись.УстановитьСтроку(ПараметрыЗаписиJSON); СтруктураДанных = СтруктураЗапроса(); . . . ЗаписатьJSON(Запись,СтруктураДанных,,"ПреобразованиеЗначения",ЭтотОбъект); Отваливается с ошибкой {ВнешняяОбработка.ВнешняяОбработка1.Форма.Форма.Форма(128)}: Ошибка при вызове метода контекста (ЗаписатьJSON) ЗаписатьJSON(Запись,СтруктураДанных,,"ПреобразованиеЗначения",ЭтотОбъект); по причине: Метод 'ПреобразованиеЗначения' не найден Почему не видется функция? Функция находится в контексте формы. Перенос в модуль обработки не помог. Обработка внешняя. Запускаю все из толстого клиента. На конфе режим совместимости Версия 8.2.13. | |||
| 1
    
        timurhv 28.11.23✎ 13:43 | 
        Синтаксис:
 ЗаписатьJSON(<ЗаписьJSON>, <Значение>, <НазначениеТипаXML>) | |||
| 2
    
        timurhv 28.11.23✎ 13:44 | 
        А, 8.2.13...     | |||
| 3
    
        Галахад 28.11.23✎ 13:45 | 
        Хм. Может не ЭтотОбъект, а ЭтаФорма?     | |||
| 4
    
        petya_ petrov_63 28.11.23✎ 13:46 | 
        (2) я не про метод ФабрикаXDTO, а про 
 Глобальный контекст (Global context) ЗаписатьJSON (WriteJSON) | |||
| 5
    
        petya_ petrov_63 28.11.23✎ 13:50 | 
        (3) неа, не помогло     | |||
| 6
    
        petya_ petrov_63 28.11.23✎ 13:55 | 
        Если верить всплывающей подсказе то тип у 5 параметра должен быть КомандаКомандногоИнтерфейса, УправляемаяФорма, ОбщиийМодуль . Ладно попробую по элементно записать.     | |||
| 7
    
        Pprog151713 28.11.23✎ 13:56 | 
        ПараметрыЗаписиJSON = Новый ПараметрыЗаписиJSON(, Символы.Таб);
 ЗаписьJSON = Новый ЗаписьJSON; ЗаписьJSON.УстановитьСтроку(ПараметрыЗаписиJSON); ЗаписатьJSON(ЗаписьJSON, Структура); Данные = ЗаписьJSON.Закрыть(); | |||
| 8
    
        Pprog151713 28.11.23✎ 13:59 | 
        Перечисления надо строкой делать по моему или дату в строку тоже....     | |||
| 9
    
        petya_ petrov_63 28.11.23✎ 15:43 | 
        (2) да, конкретно в этой реализации затык (если верить подсказке (6)) именно в ОФ.     | |||
| 10
    
        Fedor-1971 28.11.23✎ 17:23 | 
        (0) Ошибка означает, что нету заявленной процедуры, т.е. нужно определить процедуру для преобразования в форме (или убрать оную, если стандартно Структура прожуётся для JSON на 8.2)
 И поле с типом Дата - лучше самому преобразовать в строку через Формат | |||
| 11
    
        Fedor-1971 28.11.23✎ 17:28 | 
        раз уж записался в чайники, начни с простого создания JSON без структуры:
 инфОписание = новый ЗаписьJSON; инфОписание.УстановитьСтроку(); инфОписание.ЗаписатьНачалоОбъекта(); инфОписание.ЗаписатьИмяСвойства("ТипИнформации"); инфОписание.ЗаписатьЗначение("ОтправкаПлатПорученийБух1С8"); инфОписание.ЗаписатьИмяСвойства("УИД_Организация_ДО"); инфОписание.ЗаписатьЗначение(Строка(Объект.Организация.УникальныйИдентификатор())); инфОписание.ЗаписатьИмяСвойства("УНП_Организация"); инфОписание.ЗаписатьЗначение(СокрЛП(параметрыСоединения.ИНН)); инфОписание.ЗаписатьКонецОбъекта(); стрJSON = инфОписание.Закрыть(); | |||
| 12
    
        Valdis2007 28.11.23✎ 17:43 | 
        (0) Почему не видется функция? ...Поставь - экспорт     | |||
| 13
    
        petya_ petrov_63 29.11.23✎ 09:06 | 
        (10),(11) - я уж в принципе заставил работать через структуру, проблема была в том что в структуре было значение не примитивного типа, а перечисление.
 (12) Экспорт стоит, смотрите листинг. | |||
| 14
    
        vyaz 29.11.23✎ 16:03 | 
        извините, что не по теме (редко форум читаю последнее время):
 1. Где посмотреть статус чайника у себя? 2. Какой текущий статус у ЛивингСтара? | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |