Мастер-Центр оплат.Примеры

Материал из Megatec
Перейти к: навигация, поиск

Пример из тестовой обработки:

1. Производится загрузка Центра оплат, подключение к базе МТ и заполнения нескольких вспомогательных таблиц значений:

  Перем глМастерТурКомпонента;
Функция глУстановитьКомпонентуМастерТур()
Перем mProgId;
Перем МастерТур;
mProgId = "pc2mt.1";
Попытка
ПодключитьВнешнююКомпоненту(mProgId);
МастерТур=Новый("AddIn.pc2mt");
Исключение
Предупреждение("Не удалось создать объект МастерТур " + ОписаниеОшибки());
КонецПопытки;
Возврат МастерТур;
КонецФункции
  Процедура КН_ПодключитьсяНажатие(Элемент)
Попытка
глМастерТурКомпонента = глУстановитьКомпонентуМастерТур();
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
ВозврЗн=глМастерТурКомпонента.Подключиться(СокрЛП(Сервер),СокрЛП(DBName),СокрЛП(Логин),СокрЛП(Пароль),"100",СокрЛП(ВиртульныйGUIDБазыДанных));
Пароль="";
Если ВозврЗн=1 Тогда
ТЗ = Новый ТаблицаЗначений;
ТЗ=глМастерТурКомпонента.Т8_ПолучитьСписокВалют(0,"");
ЭлементыФормы.ТП_СписокВалют.Значение=ТЗ;
ТЗ = Новый ТаблицаЗначений;
ТЗ=глМастерТурКомпонента.Т8_ПолучитьСписокТиповСвойствПартнеров(0,);
ЭлементыФормы.ТП_ТипыСвойствПартнеровСчета.Значение=ТЗ;
ТЗ = Новый ТаблицаЗначений;
ТЗ=глМастерТурКомпонента.Т8_ПолучитьСписокТиповСостоянийПутевок();
ЭлементыФормы.ТП_ТипыСостоянийПутевокСчета.Значение=ТЗ;
ТЗ = Новый ТаблицаЗначений;
ТЗ=глМастерТурКомпонента.Т8_ПолучитьСписокТиповСвойствПартнеров(0,);
ЭлементыФормы.ТП_ТипыСвойствПартнеровПартнеры.Значение=ТЗ;
КонецЕсли;
КонецПроцедуры

2. При выборе строки с конкретной валютой вызывается курс выбранной валюты из базы данных МТ на конкретную дату:

  Процедура ТП_СписокВалютПриАктивизацииСтроки(Элемент)
     ТЗ = Новый ТаблицаЗначений;
     ТЗ=глМастерТурКомпонента.Т8_ВернутьКроссКурсПоКодамВалют("рб",ЭлементыФормы.ТП_СписокВалют.ТекущаяСтрока.КодВалюты,ДатаНачалаКурса,ДатаКонцаКурса,0);
     ЭлементыФормы.ТП_КурсыВалют.Значение=ТЗ;
  КонецПроцедуры

ЦентрОплатМастерТур1.jpg
3. Производится отбор путевок:

  Процедура КН_ОтобратьНажатие(Элемент)
ТЗ = Новый ТаблицаЗначений;
ТЗ=глМастерТурКомпонента.Т8_ВыбратьПутевкиЗаПериод(ДатаНачала,ДатаКонца,СДО0,ПолеДопОтбора);
ЭлементыФормы.ТП_Договоры.Значение=ТЗ;
КонецПроцедуры

4. При выборе строки с конкретной путевкой производится отбор дополнительной информации по путевке:

  Процедура ТП_ДоговорыПриАктивизацииСтроки(Элемент)
Если ЭлементыФормы.ТП_Договоры.Значение.Количество()>0 Тогда
ТЗ = Новый ТаблицаЗначений;
ТЗ=глМастерТурКомпонента.Т8_ВыбратьПлатежиПоКлючуПутевки(ЭлементыФормы.ТП_Договоры.ТекущаяСтрока.Ключ,0);
ЭлементыФормы.ТП_Платежи.Значение=ТЗ;
ТЗ = Новый ТаблицаЗначений;
ТЗ=глМастерТурКомпонента.Т8_ВыбратьУслугиПоКлючуПутевки(ЭлементыФормы.ТП_Договоры.ТекущаяСтрока.Ключ);
ЭлементыФормы.ТП_Услуги.Значение=ТЗ;
ТЗ = Новый ТаблицаЗначений;
ТЗ=глМастерТурКомпонента.Т8_ВыбратьТуристовПоКлючуПутевки(ЭлементыФормы.ТП_Договоры.ТекущаяСтрока.Ключ);
ЭлементыФормы.ТП_Туристы.Значение=ТЗ;
ТЗ = Новый ТаблицаЗначений;
ТЗ=глМастерТурКомпонента.Т8_ВыбратьСчетаПоКлючуПутевки(ЭлементыФормы.ТП_Договоры.ТекущаяСтрока.Ключ);
ЭлементыФормы.ТП_СчетаПоПутевке.Значение=ТЗ;
КонецЕсли;
КонецПроцедуры

ЦентрОплатМастерТур2.jpg

Как видно из примеров кода 1С, при вызове информации из базы МТ Центр-оплат создает в памяти 1С и заполняет структуру с типом "ТаблицаЗначений". Далее программист 1С может использовать эту информацию для заполнения разнообразных справочников, регистров сведений и т.п.

to be continued...

Мастер-Центр оплат.Мастер-Тур