28 окт. 2016 г.

Добавить в контекстное меню Обычные формы

Что бы добавить в контекстное меню ("ПКМ" по Табличной части) свою команду нужно:

  • На форму добавляем "Командная панель"
  • "ПКМ" по добавленной на форме командной панели - добавляем команду
  • Добавленной панели устанавливаем свойство "Видимость" = Ложь
  • В свойстве "КонтекстноеМеню" Табличной части указываем нашу добавленную ранее панель 

Результат



Итоги в табличном документ Обычное формы

Для отображения Итого (в Подвале) табличной части не управляемых форм нужно:

  • в свойствах Табличной части на форме установить галку "Подвал"
  • в свойствах Колонки табличной части (с типом Число) найти и установить галку "ОтображатьИтогВПодвале"

Вывести полное наименование в типовый отчет

Возьмем, например типовый отчет "Ведомость по товарам в розницу" конфигурации "Управление торговлей для Украины", редакция 2.3. Если зайти в выбор Поле (Группировка строк) то увидим, что Полное наименование, из справочника номенклатура никак не вытянуть, этого поля нет.

Что бы выводить Полное наименование номенклатуры нужно зайти в расширенные настройки Настроек, перейти на вкладку Дополнительные поля и уже там будет возможность из справочника Номенклатура вытянуть поле Полное наименование.


в результате получаем то что нужно




26 окт. 2016 г.

Запись xml из строки 7.7

Для сохранения хмл строки в хмл документ выполним
 Попытка
  ТекстовыйДокумент = СоздатьОбъект("Текст"); 
  ТекстовыйДокумент.Записать("D:\1.xml"); 
  
  ТекстовыйДокумент.Открыть("D:\1.xml");
  ТекстовыйДокумент.ДобавитьСтроку(ИмяВыбрФайла);  
  ТекстовыйДокумент.КодоваяСтраница(0);  
  ТекстовыйДокумент.Записать("D:\1.xml");         
  Предупреждение("ОК");    
 Исключение    
  Сообщить(ОписаниеОшибки());
 КонецПопытки;
!ИмяВыбрФайла - это строка в виде хмл

An invalid character was found in text content 1С 7.7

При чтении хмл файла получаю
"................ An invalid character was found in text content."

дело здесь в кодировке.
Открыл файл, изменил кодировку на WINDOWS-1251


ошибка исчезла.

Прочитать xml 7.7

Подключаясь  к АПИ "Новой почты", сервис отдает строку в виде хмл документа с которого нужно получить значения тегов.

Для разбора хмл будем использовать v7plus.dll.
Два файла из архива нужно закинуть в C:\Program Files (x86)\1Cv77\BIN\
И после этого запустить cmd.exe от имени администратора и выполнить
regsvr32 /u "C:\Program Files (x86)\1Cv77\BIN\v7chart.dll"

Запись в хмл документ из строки
 Попытка
  ТекстовыйДокумент = СоздатьОбъект("Текст"); 
  ТекстовыйДокумент.Записать("D:\1.xml"); 
  
  ТекстовыйДокумент.Открыть("D:\1.xml");
  ТекстовыйДокумент.ДобавитьСтроку(ИмяВыбрФайла);  
  ТекстовыйДокумент.КодоваяСтраница(0);  
  ТекстовыйДокумент.Записать("D:\1.xml");         
  Предупреждение("ОК");    
 Исключение    
  Сообщить(ОписаниеОшибки());
 КонецПопытки;
!ИмяВыбрФайла - это строка в виде хмл от "новой почты"

Чтение файла хмл
 Если ЗагрузитьВнешнююКомпоненту("v7plus.dll") = 0 Тогда 
  Предупреждение("v7plus!"); 
  Возврат; 
 КонецЕсли; 
 
 XMLАнализатор = СоздатьОбъект("AddIn.XMLParser");
 XMLДокумент = XMLАнализатор.СоздатьДокумент();
 XMLДокумент.Загрузить("D:\1.xml");
 XMLКорневойРаздел = XMLДокумент.ВыбратьУзлы("*");
 XMLКорневойРаздел = XMLКорневойРаздел.ПолучитьУзел(0);
 ДанныеXML = XMLКорневойРаздел.ВыбратьУзлы("*");
 Для Сч1 = 0 По ДанныеXML.КоличествоУзлов() - 1 Цикл
  ТС = ДанныеXML.ПолучитьУзел(Сч1);   
  
  ДанныеXML2 = ТС.ВыбратьУзлы("*");     
  Для Сч2 = 0 По ДанныеXML2.КоличествоУзлов() - 1 Цикл  
   ТС2 = ДанныеXML2.ПолучитьУзел(Сч2);  
   
   ДанныеXML3 = ТС2.ВыбратьУзлы("*");  
   Для Сч3 = 0 По ДанныеXML3.КоличествоУзлов() - 1 Цикл   
    ТС3 = ДанныеXML3.ПолучитьУзел(Сч3);  
    Сообщить(ТС3.Текст);  
   КонецЦикла;

  КонецЦикла;  
 КонецЦикла;  
на выходе получаю

25 окт. 2016 г.

Подключиться к сайту с 7.7

Для подключение к  API "Новой почты" с 7-ки выполняем
 HTTPxml = СоздатьОбъект("MSXML2.xmlHttp.4.0");     
 HTTPxml.Open("POST", "https://api.novaposhta.ua/v2.0/xml/", 0 );
 HTTPxml.setRequestHeader("Content-Type", "text/xml");    
  
 HTTPxml.Send(запрос);      
 Результат = HTTPxml.responseText;
в переменную Результат будет возвращено ответ в виде .xml
 

CopyPaste Copyright © 2017 - |- Шаблон создан O Pregador - |- Отредактирован myr4ik07