mirror of
https://github.com/firstBitSportivnaya/PSSL.git
synced 2024-11-19 17:51:57 +02:00
Рефакторинг подсистемы интеграций и доработка истории интеграции (#120)
* Разработан метод получения содержимого каталога SFTP #117; Добавлены реквизиты для хранения файла в НЕ текстовом формате в историю интеграции #112. Рефакторинг общего модуля пбп_ИнтеграцииСервер * Исправление ошибок по Sonarqube. #121 Добавление метода удаления файлов на SFTP. Содержит исправления для #124 и #125
This commit is contained in:
parent
b4b7c46a64
commit
75960690bd
@ -10,7 +10,7 @@
|
||||
"userWordsToIgnore": "пбп"
|
||||
},
|
||||
"LatinAndCyrillicSymbolInWord": {
|
||||
"excludeWords": "ЧтениеXML, ЧтениеJSON, ЗаписьXML, ЗаписьJSON, ComОбъект, ФабрикаXDTO, ОбъектXDTO, СоединениеFTP, HTTPСоединение, HTTPЗапрос, HTTPСервисОтвет, SMSСообщение, WSПрокси, ИмяCOMОбъекта, ЭтоWindowsКлиент",
|
||||
"excludeWords": "ЧтениеXML, ЧтениеJSON, ЗаписьXML, ЗаписьJSON, ComОбъект, ФабрикаXDTO, ОбъектXDTO, СоединениеFTP, HTTPСоединение, HTTPЗапрос, HTTPСервисОтвет, SMSСообщение, WSПрокси, ИмяCOMОбъекта, ЭтоWindowsКлиент, ЭтоLinuxСервер, ВыполнитьПодключениеКFTPСерверуДляИнтеграционногоПотока, ЗаполнитьПараметрыПодключенияКSFTPСерверу, ПолучитьТаблицуФайловСодержимогоSFTPСервера",
|
||||
"allowTrailingPartsInAnotherLanguage": true
|
||||
}
|
||||
}
|
||||
|
@ -1001,6 +1001,90 @@
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Attribute>
|
||||
<Attribute uuid="d1f5399b-14ba-4698-8561-2a733d651314">
|
||||
<Properties>
|
||||
<Name>ИмяФайлаСообщения</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Имя файла сообщения</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Type>
|
||||
<v8:Type>xs:string</v8:Type>
|
||||
<v8:StringQualifiers>
|
||||
<v8:Length>150</v8:Length>
|
||||
<v8:AllowedLength>Variable</v8:AllowedLength>
|
||||
</v8:StringQualifiers>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip/>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillFromFillingValue>false</FillFromFillingValue>
|
||||
<FillValue xsi:type="xs:string"/>
|
||||
<FillChecking>DontCheck</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Use>ForItem</Use>
|
||||
<Indexing>DontIndex</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Attribute>
|
||||
<Attribute uuid="05bf5522-0066-4d0c-b37a-23553f477edf">
|
||||
<Properties>
|
||||
<Name>ФайлСообщения</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Файл сообщения</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Type>
|
||||
<v8:Type>v8:ValueStorage</v8:Type>
|
||||
</Type>
|
||||
<PasswordMode>false</PasswordMode>
|
||||
<Format/>
|
||||
<EditFormat/>
|
||||
<ToolTip/>
|
||||
<MarkNegatives>false</MarkNegatives>
|
||||
<Mask/>
|
||||
<MultiLine>false</MultiLine>
|
||||
<ExtendedEdit>false</ExtendedEdit>
|
||||
<MinValue xsi:nil="true"/>
|
||||
<MaxValue xsi:nil="true"/>
|
||||
<FillFromFillingValue>false</FillFromFillingValue>
|
||||
<FillValue xsi:nil="true"/>
|
||||
<FillChecking>DontCheck</FillChecking>
|
||||
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
|
||||
<ChoiceParameterLinks/>
|
||||
<ChoiceParameters/>
|
||||
<QuickChoice>Auto</QuickChoice>
|
||||
<CreateOnInput>Auto</CreateOnInput>
|
||||
<ChoiceForm/>
|
||||
<LinkByType/>
|
||||
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
|
||||
<Use>ForItem</Use>
|
||||
<Indexing>DontIndex</Indexing>
|
||||
<FullTextSearch>Use</FullTextSearch>
|
||||
<DataHistory>Use</DataHistory>
|
||||
</Properties>
|
||||
</Attribute>
|
||||
<TabularSection uuid="ed8ab14b-48ad-444e-8949-68731cf6a0e8">
|
||||
<InternalInfo>
|
||||
<xr:GeneratedType name="CatalogTabularSection.пбп_ИсторияИнтеграции.ОбъектыИнтеграции" category="TabularSection">
|
||||
|
@ -20,6 +20,16 @@
|
||||
|
||||
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
|
||||
|
||||
#Область СлужебныйПрограммныйИнтерфейс
|
||||
|
||||
Функция ПолучитьДанныеФайлаСообщения() Экспорт
|
||||
|
||||
Возврат ФайлСообщения.Получить();
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти // СлужебныйПрограммныйИнтерфейс
|
||||
|
||||
#Область ОбработчикиСобытий
|
||||
|
||||
Процедура ПередУдалением(Отказ)
|
||||
|
@ -284,13 +284,47 @@
|
||||
</ToolTip>
|
||||
<ExtendedTooltip name="ГруппаЗапросИсходящийРасширеннаяПодсказка" id="63"/>
|
||||
<ChildItems>
|
||||
<TextDocumentField name="ЗапросИсходящий" id="7">
|
||||
<TextDocumentField name="ИсходящееСообщение" id="7">
|
||||
<DataPath>ЗапросИсходящийОтформатированный</DataPath>
|
||||
<TitleLocation>None</TitleLocation>
|
||||
<EditMode>EnterOnInput</EditMode>
|
||||
<ContextMenu name="ЗапросИсходящийКонтекстноеМеню" id="8"/>
|
||||
<ExtendedTooltip name="ЗапросИсходящийРасширеннаяПодсказка" id="9"/>
|
||||
<ContextMenu name="ИсходящееСообщениеКонтекстноеМеню" id="8"/>
|
||||
<ExtendedTooltip name="ИсходящееСообщениеРасширеннаяПодсказка" id="9"/>
|
||||
</TextDocumentField>
|
||||
<UsualGroup name="ГруппаДанныеСообщенияИсходящего" id="163">
|
||||
<Title>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Группа данные сообщения исходящего</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ToolTip>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Группа данные сообщения исходящего</v8:content>
|
||||
</v8:item>
|
||||
</ToolTip>
|
||||
<Representation>None</Representation>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаДанныеСообщенияИсходящегоРасширеннаяПодсказка" id="164"/>
|
||||
<ChildItems>
|
||||
<LabelDecoration name="Декорация1" id="158">
|
||||
<Title formatted="false">
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Прикрепленный файл обмена:</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ContextMenu name="Декорация1КонтекстноеМеню" id="159"/>
|
||||
<ExtendedTooltip name="Декорация1РасширеннаяПодсказка" id="160"/>
|
||||
</LabelDecoration>
|
||||
<Button name="СохранитьФайлСообщенияОбменаИсх" id="161">
|
||||
<Type>Hyperlink</Type>
|
||||
<CommandName>Form.Command.СохранитьФайлСообщенияОбмена</CommandName>
|
||||
<ExtendedTooltip name="СохранитьФайлСообщенияОбменаИсхРасширеннаяПодсказка" id="162"/>
|
||||
</Button>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
</ChildItems>
|
||||
</Page>
|
||||
<Page name="ГруппаЗапросВходящий" id="102">
|
||||
@ -313,13 +347,47 @@
|
||||
</ToolTip>
|
||||
<ExtendedTooltip name="ГруппаЗапросВходящийРасширеннаяПодсказка" id="103"/>
|
||||
<ChildItems>
|
||||
<TextDocumentField name="ЗапросВходящий" id="104">
|
||||
<TextDocumentField name="ВходящееСообщение" id="104">
|
||||
<DataPath>ЗапросВходящийОтформатированный</DataPath>
|
||||
<TitleLocation>None</TitleLocation>
|
||||
<EditMode>EnterOnInput</EditMode>
|
||||
<ContextMenu name="ЗапросВходящийКонтекстноеМеню" id="105"/>
|
||||
<ExtendedTooltip name="ЗапросВходящийРасширеннаяПодсказка" id="106"/>
|
||||
<ContextMenu name="ВходящееСообщениеКонтекстноеМеню" id="105"/>
|
||||
<ExtendedTooltip name="ВходящееСообщениеРасширеннаяПодсказка" id="106"/>
|
||||
</TextDocumentField>
|
||||
<UsualGroup name="ГруппаДанныеСообщенияВходящего" id="165">
|
||||
<Title>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Группа данные сообщения входящего</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ToolTip>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Группа данные сообщения исходящего</v8:content>
|
||||
</v8:item>
|
||||
</ToolTip>
|
||||
<Representation>None</Representation>
|
||||
<ShowTitle>false</ShowTitle>
|
||||
<ExtendedTooltip name="ГруппаДанныеСообщенияВходящегоРасширеннаяПодсказка" id="166"/>
|
||||
<ChildItems>
|
||||
<LabelDecoration name="Декорация2" id="167">
|
||||
<Title formatted="false">
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Прикрепленный файл обмена:</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ContextMenu name="Декорация2КонтекстноеМеню" id="168"/>
|
||||
<ExtendedTooltip name="Декорация2РасширеннаяПодсказка" id="169"/>
|
||||
</LabelDecoration>
|
||||
<Button name="СохранитьФайлСообщенияОбменаВх" id="170">
|
||||
<Type>Hyperlink</Type>
|
||||
<CommandName>Form.Command.СохранитьФайлСообщенияОбмена</CommandName>
|
||||
<ExtendedTooltip name="СохранитьФайлСообщенияОбменаВхРасширеннаяПодсказка" id="171"/>
|
||||
</Button>
|
||||
</ChildItems>
|
||||
</UsualGroup>
|
||||
</ChildItems>
|
||||
</Page>
|
||||
<Page name="ГруппаТекстОшибки" id="66">
|
||||
@ -586,5 +654,20 @@
|
||||
<Action>КопироватьВБуферОбмена</Action>
|
||||
<Representation>TextPicture</Representation>
|
||||
</Command>
|
||||
<Command name="СохранитьФайлСообщенияОбмена" id="4">
|
||||
<Title>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Сохранить файл сообщения обмена</v8:content>
|
||||
</v8:item>
|
||||
</Title>
|
||||
<ToolTip>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Сохранить файл сообщения обмена</v8:content>
|
||||
</v8:item>
|
||||
</ToolTip>
|
||||
<Action>СохранитьФайлСообщенияОбмена</Action>
|
||||
</Command>
|
||||
</Commands>
|
||||
</Form>
|
@ -33,21 +33,24 @@
|
||||
УстановитьСвойстваЭлементов();
|
||||
|
||||
ЭтоЗагрузка = Объект.Статус = Перечисления.пбп_СтатусыИнтеграции.Загружено
|
||||
ИЛИ Объект.Статус = Перечисления.пбп_СтатусыИнтеграции.ОшибкаЗагрузки;
|
||||
Или Объект.Статус = Перечисления.пбп_СтатусыИнтеграции.ОшибкаЗагрузки;
|
||||
Элементы.ГруппаОбъектыОбмена.Заголовок = ?(ЭтоЗагрузка, "Загруженные объекты", "Выгруженные объекты");
|
||||
|
||||
Если НЕ Объект.Ошибка Тогда
|
||||
Если Не Объект.Ошибка Тогда
|
||||
Элементы.ГруппаТекстОшибки.Видимость = Ложь;
|
||||
Элементы.Ошибка.Видимость = Ложь;
|
||||
КонецЕсли;
|
||||
|
||||
Если Объект.ФорматИнтеграции <> Перечисления.пбп_ФорматыИнтеграций.ПроизвольныйФормат Тогда
|
||||
Если Объект.ФорматИнтеграции = Перечисления.пбп_ФорматыИнтеграций.XML
|
||||
Или Объект.ФорматИнтеграции = Перечисления.пбп_ФорматыИнтеграций.JSON Тогда
|
||||
Элементы.ГруппаФорматированиеТекстаЗапроса.Видимость = Истина;
|
||||
Элементы.ВидОтображенияЗапроса.Видимость = Объект.ФорматИнтеграции = Перечисления.пбп_ФорматыИнтеграций.JSON;
|
||||
Элементы.ЗапросИсходящий.Вид = ВидПоляФормы.ПолеHTMLДокумента;
|
||||
Элементы.ЗапросВходящий.Вид = ВидПоляФормы.ПолеHTMLДокумента;
|
||||
Элементы.ЗапросИсходящий.УстановитьДействие("ДокументСформирован", "ЗапросИсходящийДокументСформирован_Подключаемый");
|
||||
Элементы.ЗапросВходящий.УстановитьДействие("ДокументСформирован", "ЗапросВходящийДокументСформирован_Подключаемый");
|
||||
Элементы.ИсходящееСообщение.Вид = ВидПоляФормы.ПолеHTMLДокумента;
|
||||
Элементы.ВходящееСообщение.Вид = ВидПоляФормы.ПолеHTMLДокумента;
|
||||
Элементы.ИсходящееСообщение.УстановитьДействие("ДокументСформирован",
|
||||
"ЗапросИсходящийДокументСформирован_Подключаемый");
|
||||
Элементы.ВходящееСообщение.УстановитьДействие("ДокументСформирован",
|
||||
"ЗапросВходящийДокументСформирован_Подключаемый");
|
||||
Иначе
|
||||
Элементы.ГруппаФорматированиеТекстаЗапроса.Видимость = Ложь;
|
||||
Если ЗначениеЗаполнено(Объект.ВходящееСообщение) Тогда
|
||||
@ -119,8 +122,8 @@
|
||||
|
||||
Предопределенный = "Перечисление.пбп_ФорматыИнтеграций.XML";
|
||||
Если Объект.ФорматИнтеграции = пбп_ОбщегоНазначенияСлужебныйКлиент.ПредопределенныйЭлемент(Предопределенный) Тогда
|
||||
Элементы.ЗапросИсходящий.Документ.defaultView.Xonomy.plusminus("xonomy1", true);
|
||||
Элементы.ЗапросВходящий.Документ.defaultView.Xonomy.plusminus("xonomy1", true);
|
||||
Элементы.ИсходящееСообщение.Документ.defaultView.Xonomy.plusminus("xonomy1", True);
|
||||
Элементы.ВходящееСообщение.Документ.defaultView.Xonomy.plusminus("xonomy1", True);
|
||||
Иначе
|
||||
Если ВидОтображенияЗапроса Тогда
|
||||
ДокументВнешнийОбъектИсходящий.expandAll();
|
||||
@ -138,8 +141,8 @@
|
||||
|
||||
Предопределенный = "Перечисление.пбп_ФорматыИнтеграций.XML";
|
||||
Если Объект.ФорматИнтеграции = пбп_ОбщегоНазначенияСлужебныйКлиент.ПредопределенныйЭлемент(Предопределенный) Тогда
|
||||
Элементы.ЗапросИсходящий.Документ.defaultView.Xonomy.plusminus("xonomy1", false);
|
||||
Элементы.ЗапросВходящий.Документ.defaultView.Xonomy.plusminus("xonomy1", false);
|
||||
Элементы.ИсходящееСообщение.Документ.defaultView.Xonomy.plusminus("xonomy1", False);
|
||||
Элементы.ВходящееСообщение.Документ.defaultView.Xonomy.plusminus("xonomy1", False);
|
||||
Иначе
|
||||
Если ВидОтображенияЗапроса Тогда
|
||||
ДокументВнешнийОбъектИсходящий.collapseAll();
|
||||
@ -172,6 +175,37 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура СохранитьФайлСообщенияОбмена(Команда)
|
||||
|
||||
Если ПустаяСтрока(Объект.ИмяФайлаСообщения) Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ЗаголовокДиалога = НСтр("ru = 'Укажите файл внешней компоненты'");
|
||||
|
||||
МассивРазделителей = пбп_СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(
|
||||
Объект.ИмяФайлаСообщения, ".", Истина, Истина);
|
||||
ИмяКомпоненты = МассивРазделителей[0];
|
||||
КоличествоРазделимых = 2;
|
||||
Если МассивРазделителей.Количество() = КоличествоРазделимых Тогда
|
||||
Расширение = МассивРазделителей[1];
|
||||
КонецЕсли;
|
||||
|
||||
РежимОткрытияДиалога = РежимДиалогаВыбораФайла.Сохранение;
|
||||
ДиалогСохранения = Новый ДиалогВыбораФайла(РежимОткрытияДиалога);
|
||||
ДиалогСохранения.ПолноеИмяФайла = ИмяКомпоненты;
|
||||
ДиалогСохранения.Расширение = Расширение;
|
||||
ДиалогСохранения.Заголовок = ЗаголовокДиалога;
|
||||
ДиалогСохранения.ПредварительныйПросмотр = Ложь;
|
||||
ДиалогСохранения.Каталог = "";
|
||||
|
||||
Оповещение = Новый ОписаниеОповещения("ОбработчикВыбораКаталогаСохранениеЗавершениеПослеВыбораВДиалоге", ЭтотОбъект);
|
||||
|
||||
ДиалогСохранения.Показать(Оповещение);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти // ОбработчикиКомандФормы
|
||||
|
||||
#Область СлужебныеПроцедурыИФункции
|
||||
@ -179,38 +213,64 @@
|
||||
&НаСервере
|
||||
Процедура УстановитьСвойстваЭлементов()
|
||||
|
||||
Элементы.СохранитьФайлСообщенияОбменаИсх.Заголовок = Объект.ИмяФайлаСообщения;
|
||||
Элементы.СохранитьФайлСообщенияОбменаВх.Заголовок = Объект.ИмяФайлаСообщения;
|
||||
|
||||
Если ЗначениеЗаполнено(Объект.ИнтеграционныйПоток) Тогда
|
||||
ТипИнтеграции = пбп_ОбщегоНазначенияСервер.ЗначениеРеквизитаОбъекта(
|
||||
Объект.ИнтеграционныйПоток, "НастройкаИнтеграции.ТипИнтеграции");
|
||||
ЭлементНаследования = Справочники.пбп_ТипыИнтеграций
|
||||
.ПолучитьПредопределенныйЭлементНаследованияНастроекТипаИнтеграции(ТипИнтеграции);
|
||||
|
||||
ЭтоВыгрузка = НаправлениеИнтеграцииВыгружено(Объект.Статус);
|
||||
|
||||
Если ЭлементНаследования = Справочники.пбп_ТипыИнтеграций.Каталог
|
||||
Или ЭлементНаследования = Справочники.пбп_ТипыИнтеграций.FTPРесурсы Тогда
|
||||
Элементы.ИсходящееСообщение.Заголовок = НСтр("ru = 'Содержимое записываемого файла'");
|
||||
Элементы.ВходящееСообщение.Заголовок = НСтр("ru = 'Содержимое читаемого файла'");
|
||||
|
||||
ЭтоВыгрузка = НаправлениеИнтеграцииВыгружено(Объект.Статус);
|
||||
Элементы.ИсходящееСообщение.Видимость = ЭтоВыгрузка;
|
||||
Элементы.ВходящееСообщение.Видимость = Не ЭтоВыгрузка;
|
||||
УстановитьСвойстваЭлементовФайловогоОбмена(ТипИнтеграции, ЭтоВыгрузка);
|
||||
ИначеЕсли ЭлементНаследования = Справочники.пбп_ТипыИнтеграций.ПочтовыйКлиент Тогда
|
||||
Элементы.ИсходящееСообщение.Заголовок = НСтр("ru = 'Содержимое тела письма'");
|
||||
Элементы.ИсходящееСообщение.Видимость = Истина;
|
||||
Элементы.ВходящееСообщение.Видимость = Ложь;
|
||||
Элементы.ГруппаЗапросИсходящий.Заголовок = НСтр("ru = 'Содержимое тела письма';");
|
||||
Элементы.ГруппаЗапросИсходящий.Видимость = Истина;
|
||||
Элементы.ГруппаЗапросВходящий.Видимость = Ложь;
|
||||
ИначеЕсли ЭлементНаследования = Справочники.пбп_ТипыИнтеграций.COM
|
||||
Или ЭлементНаследования = Справочники.пбп_ТипыИнтеграций.ВнешняяКомпонента Тогда
|
||||
Элементы.ИсходящееСообщение.Видимость = Ложь;
|
||||
Элементы.ВходящееСообщение.Видимость = Ложь;
|
||||
Элементы.ГруппаЗапросИсходящий.Видимость = Ложь;
|
||||
Элементы.ГруппаЗапросВходящий.Видимость = Ложь;
|
||||
ИначеЕсли ЭлементНаследования = Справочники.пбп_ТипыИнтеграций.КоманднаяСтрока Тогда
|
||||
Элементы.ИсходящееСообщение.Заголовок = НСтр("ru = 'Выполняемая команда'");
|
||||
Элементы.ВходящееСообщение.Заголовок = НСтр("ru = 'Результат выполнения команды'");
|
||||
Элементы.ИсходящееСообщение.Видимость = Истина;
|
||||
Элементы.ВходящееСообщение.Видимость = Истина;
|
||||
Элементы.ГруппаЗапросИсходящий.Заголовок = НСтр("ru = 'Выполняемая команда';");
|
||||
Элементы.ГруппаЗапросВходящий.Заголовок = НСтр("ru = 'Результат выполнения команды';");
|
||||
Элементы.ГруппаЗапросИсходящий.Видимость = Истина;
|
||||
Элементы.ГруппаЗапросВходящий.Видимость = Истина;
|
||||
Иначе
|
||||
Элементы.ИсходящееСообщение.Заголовок = НСтр("ru = 'Запрос исходящий'");
|
||||
Элементы.ВходящееСообщение.Заголовок = НСтр("ru = 'Запрос входящий'");
|
||||
Элементы.ИсходящееСообщение.Видимость = Истина;
|
||||
Элементы.ВходящееСообщение.Видимость = Истина;
|
||||
Элементы.ГруппаЗапросИсходящий.Заголовок = НСтр("ru = 'Запрос исходящий';");
|
||||
Элементы.ГруппаЗапросВходящий.Заголовок = НСтр("ru = 'Запрос входящий';");
|
||||
Элементы.ГруппаЗапросИсходящий.Видимость = Истина;
|
||||
Элементы.ГруппаЗапросВходящий.Видимость = Истина;
|
||||
КонецЕсли;
|
||||
|
||||
ВывестиСсылкуНаФайлПриНеобходимости(ЭтоВыгрузка, ЭлементНаследования, ТипИнтеграции);
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервере
|
||||
Процедура УстановитьСвойстваЭлементовФайловогоОбмена(ТипИнтеграции, ЭтоВыгрузка)
|
||||
|
||||
ЗаголовокЗаписываемыйФайл = НСтр("ru = 'Содержимое записываемого файла';");
|
||||
ЗаголовокЧитаемыйФайл = НСтр("ru = 'Содержимое читаемого файла';");
|
||||
|
||||
Если ТипИнтеграции = Справочники.пбп_ТипыИнтеграций.SFTP Тогда
|
||||
Элементы.ГруппаЗапросИсходящий.Заголовок = НСтр("ru = 'Исполняемая команда';");
|
||||
Если ЭтоВыгрузка Тогда
|
||||
Элементы.ГруппаЗапросВходящий.Заголовок = ЗаголовокЗаписываемыйФайл;
|
||||
Иначе
|
||||
Элементы.ГруппаЗапросВходящий.Заголовок = ЗаголовокЧитаемыйФайл;
|
||||
КонецЕсли;
|
||||
Иначе
|
||||
Элементы.ГруппаЗапросИсходящий.Заголовок = ЗаголовокЗаписываемыйФайл;
|
||||
Элементы.ГруппаЗапросВходящий.Заголовок = ЗаголовокЧитаемыйФайл;
|
||||
|
||||
Элементы.ГруппаЗапросИсходящий.Видимость = ЭтоВыгрузка;
|
||||
Элементы.ГруппаЗапросВходящий.Видимость = Не ЭтоВыгрузка;
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
@ -223,6 +283,45 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
&НаСервере
|
||||
Процедура ВывестиСсылкуНаФайлПриНеобходимости(ЭтоВыгрузка, ЭлементНаследования, ТипИнтеграции)
|
||||
|
||||
ПоказатьСсылкуНаФайлВместоЗапроса = Не ПустаяСтрока(Объект.ИмяФайлаСообщения)
|
||||
И Не (ЭлементНаследования = Справочники.пбп_ТипыИнтеграций.COM
|
||||
Или ЭлементНаследования = Справочники.пбп_ТипыИнтеграций.ВнешняяКомпонента);
|
||||
|
||||
Если ПоказатьСсылкуНаФайлВместоЗапроса Тогда
|
||||
Если ЭлементНаследования = Справочники.пбп_ТипыИнтеграций.Каталог
|
||||
Или ЭлементНаследования = Справочники.пбп_ТипыИнтеграций.FTPРесурсы
|
||||
Или ЭлементНаследования = Справочники.пбп_ТипыИнтеграций.ПочтовыйКлиент Тогда
|
||||
Если ТипИнтеграции = Справочники.пбп_ТипыИнтеграций.SFTP Тогда
|
||||
Элементы.ГруппаДанныеСообщенияИсходящего.Видимость = Ложь;
|
||||
Элементы.ИсходящееСообщение.Видимость = Истина;
|
||||
Элементы.ГруппаДанныеСообщенияВходящего.Видимость = Истина;
|
||||
Элементы.ВходящееСообщение.Видимость = Ложь;
|
||||
Иначе
|
||||
Элементы.ГруппаДанныеСообщенияИсходящего.Видимость = ЭтоВыгрузка;
|
||||
Элементы.ИсходящееСообщение.Видимость = Не ЭтоВыгрузка;
|
||||
Элементы.ГруппаДанныеСообщенияВходящего.Видимость = Не ЭтоВыгрузка;
|
||||
Элементы.ВходящееСообщение.Видимость = ЭтоВыгрузка;
|
||||
КонецЕсли;
|
||||
ИначеЕсли ЭлементНаследования = Справочники.пбп_ТипыИнтеграций.RESTAPI
|
||||
Или ЭлементНаследования = Справочники.пбп_ТипыИнтеграций.SOAP Тогда
|
||||
Элементы.ГруппаДанныеСообщенияИсходящего.Видимость = ЭтоВыгрузка;
|
||||
Элементы.ГруппаДанныеСообщенияВходящего.Видимость = Не ЭтоВыгрузка;
|
||||
Иначе
|
||||
Элементы.ГруппаДанныеСообщенияИсходящего.Видимость = ЭтоВыгрузка;
|
||||
Элементы.ГруппаДанныеСообщенияВходящего.Видимость = Не ЭтоВыгрузка;
|
||||
Элементы.ИсходящееСообщение.Видимость = Ложь;
|
||||
Элементы.ВходящееСообщение.Видимость = Ложь;
|
||||
КонецЕсли;
|
||||
Иначе
|
||||
Элементы.ГруппаДанныеСообщенияИсходящего.Видимость = Ложь;
|
||||
Элементы.ГруппаДанныеСообщенияВходящего.Видимость = Ложь;
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервере
|
||||
Функция ОтформатироватьСообщениеИнтеграции(Знач ТекстСообщенияИнтеграции)
|
||||
|
||||
@ -238,40 +337,61 @@
|
||||
КонецФункции
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ИнициализироватьБазовыйФайлРедактора(ФорматИнтеграции)
|
||||
Процедура ИнициализироватьБазовыйФайлРедактора(ФорматИнтеграцииСтрокой)
|
||||
|
||||
#Если ВебКлиент Тогда
|
||||
ВызватьИсключение НСтр("ru = 'Редактор " + ФорматИнтеграции + " не предназначен для веб-клиента'");
|
||||
ВызватьИсключение НСтр("ru = 'Редактор " + ФорматИнтеграцииСтрокой + " не предназначен для веб-клиента'");
|
||||
#Иначе
|
||||
Если ФорматИнтеграции = "JSON" Тогда
|
||||
ЗапросИсходящийОтформатированный = ПолучитьБазовыйФайлРедактора(ФорматИнтеграции);
|
||||
ЗапросВходящийОтформатированный = ЗапросИсходящийОтформатированный;
|
||||
Иначе
|
||||
ЗапросИсходящийОтформатированный = ПолучитьБазовыйФайлРедактора(ФорматИнтеграции, "Out");
|
||||
ЗапросВходящийОтформатированный = ПолучитьБазовыйФайлРедактора(ФорматИнтеграции, "In");
|
||||
Если ФорматИнтеграцииСтрокой = "JSON" Тогда
|
||||
СохранитьБазовыйФайлРедактора(ФорматИнтеграцииСтрокой);
|
||||
ИначеЕсли ФорматИнтеграцииСтрокой = "XML" Тогда
|
||||
СохранитьБазовыйФайлРедактора(ФорматИнтеграцииСтрокой, "Out");
|
||||
СохранитьБазовыйФайлРедактора(ФорматИнтеграцииСтрокой, "In");
|
||||
КонецЕсли;
|
||||
#КонецЕсли
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Функция ПолучитьБазовыйФайлРедактора(ФорматИнтеграции, Дополнение = "")
|
||||
Процедура СохранитьБазовыйФайлРедактора(ФорматИнтеграции, Дополнение = "")
|
||||
|
||||
Расширение = ФорматИнтеграции + "Editor" + Дополнение;
|
||||
|
||||
ДополнительныеПараметры = Новый Структура;
|
||||
ДополнительныеПараметры.Вставить("ФорматИнтеграции" , ФорматИнтеграции);
|
||||
ДополнительныеПараметры.Вставить("Дополнение" , Дополнение);
|
||||
|
||||
Оповещение = Новый ОписаниеОповещения(
|
||||
"ПослеСозданияВременногоКаталогаДляБазовогоРедактора",
|
||||
ЭтотОбъект, ДополнительныеПараметры);
|
||||
пбп_ФайловаяСистемаКлиентПереадресация.СоздатьВременныйКаталог(Оповещение, Расширение);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ПослеСозданияВременногоКаталогаДляБазовогоРедактора(
|
||||
Результат, Знач ДополнительныеПараметры = Неопределено) Экспорт
|
||||
|
||||
#Если НЕ ВебКлиент Тогда
|
||||
КаталогКомпоненты = КаталогВременныхФайлов() + ФорматИнтеграции + "Editor" + Дополнение;
|
||||
КаталогНаДиске = Новый Файл(КаталогКомпоненты);
|
||||
ДвоичныеДанные = ДвоичныеДанныеМакета(ФорматИнтеграции);
|
||||
ДвоичныеДанные = ДвоичныеДанныеМакета(ДополнительныеПараметры.ФорматИнтеграции);
|
||||
|
||||
Чтение = Новый ЧтениеДанных(ДвоичныеДанные);
|
||||
Файл = Новый ЧтениеZipФайла(Чтение.ИсходныйПоток());
|
||||
Файл.ИзвлечьВсе(КаталогКомпоненты);
|
||||
Файл.ИзвлечьВсе(Результат);
|
||||
|
||||
БазовыйФайлРедактора = КаталогКомпоненты + ПолучитьРазделительПути() + "index.html";
|
||||
|
||||
Возврат БазовыйФайлРедактора;
|
||||
БазовыйФайлРедактора = Результат + ПолучитьРазделительПути() + "index.html";
|
||||
|
||||
Если ДополнительныеПараметры.ФорматИнтеграции = "JSON" Тогда
|
||||
ЗапросИсходящийОтформатированный = БазовыйФайлРедактора;
|
||||
ЗапросВходящийОтформатированный = БазовыйФайлРедактора;
|
||||
ИначеЕсли ДополнительныеПараметры.Дополнение = "Out" Тогда
|
||||
ЗапросИсходящийОтформатированный = БазовыйФайлРедактора;
|
||||
Иначе
|
||||
ЗапросВходящийОтформатированный = БазовыйФайлРедактора;
|
||||
КонецЕсли;
|
||||
#КонецЕсли
|
||||
|
||||
КонецФункции
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ИнициализироватьИЗаполнитьТекстомОбъектJSON(ВидОтображения, ТипЗапроса = "")
|
||||
@ -281,7 +401,7 @@
|
||||
ДокументВнешнийОбъектИсходящий.destroy();
|
||||
КонецЕсли;
|
||||
|
||||
ДокументВнешнийОбъектИсходящий = Элементы.ЗапросИсходящий.Документ.defaultView.Init(ВидОтображения);
|
||||
ДокументВнешнийОбъектИсходящий = Элементы.ИсходящееСообщение.Документ.defaultView.Init(ВидОтображения);
|
||||
ДокументВнешнийОбъектИсходящий.setName("Корень"); // Установка имени верхнего уровня для дерева
|
||||
ДокументВнешнийОбъектИсходящий.setText(Объект.ИсходящееСообщение);
|
||||
|
||||
@ -290,7 +410,7 @@
|
||||
ДокументВнешнийОбъектВходящий.destroy();
|
||||
КонецЕсли;
|
||||
|
||||
ДокументВнешнийОбъектВходящий = Элементы.ЗапросВходящий.Документ.defaultView.Init(ВидОтображения);
|
||||
ДокументВнешнийОбъектВходящий = Элементы.ВходящееСообщение.Документ.defaultView.Init(ВидОтображения);
|
||||
ДокументВнешнийОбъектВходящий.setName("Корень"); // Установка имени верхнего уровня для дерева
|
||||
ДокументВнешнийОбъектВходящий.setText(Объект.ВходящееСообщение);
|
||||
Иначе
|
||||
@ -298,7 +418,7 @@
|
||||
ДокументВнешнийОбъектИсходящий.destroy();
|
||||
КонецЕсли;
|
||||
|
||||
ДокументВнешнийОбъектИсходящий = Элементы.ЗапросИсходящий.Документ.defaultView.Init(ВидОтображения);
|
||||
ДокументВнешнийОбъектИсходящий = Элементы.ИсходящееСообщение.Документ.defaultView.Init(ВидОтображения);
|
||||
ДокументВнешнийОбъектИсходящий.setName("Корень"); // Установка имени верхнего уровня для дерева
|
||||
ДокументВнешнийОбъектИсходящий.setText(Объект.ИсходящееСообщение);
|
||||
|
||||
@ -306,9 +426,11 @@
|
||||
ДокументВнешнийОбъектВходящий.destroy();
|
||||
КонецЕсли;
|
||||
|
||||
ДокументВнешнийОбъектВходящий = Элементы.ЗапросВходящий.Документ.defaultView.Init(ВидОтображения);
|
||||
ДокументВнешнийОбъектВходящий.setName("Корень"); // Установка имени верхнего уровня для дерева
|
||||
ДокументВнешнийОбъектВходящий.setText(Объект.ВходящееСообщение);
|
||||
Если Элементы.ВходящееСообщение.Документ <> Неопределено Тогда
|
||||
ДокументВнешнийОбъектВходящий = Элементы.ВходящееСообщение.Документ.defaultView.Init(ВидОтображения);
|
||||
ДокументВнешнийОбъектВходящий.setName("Корень"); // Установка имени верхнего уровня для дерева
|
||||
ДокументВнешнийОбъектВходящий.setText(Объект.ВходящееСообщение);
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
@ -317,19 +439,19 @@
|
||||
Процедура ИнициализироватьИЗаполнитьТекстомОбъектXML(ТипЗапроса)
|
||||
|
||||
Если ТипЗапроса = "Исходящий" Тогда
|
||||
Элементы.ЗапросИсходящий.Документ.defaultView.start(
|
||||
Элементы.ИсходящееСообщение.Документ.defaultView.start(
|
||||
ОтформатироватьСообщениеИнтеграции(Объект.ИсходящееСообщение), "nerd");
|
||||
Иначе
|
||||
Элементы.ЗапросВходящий.Документ.defaultView.start(
|
||||
Элементы.ВходящееСообщение.Документ.defaultView.start(
|
||||
ОтформатироватьСообщениеИнтеграции(Объект.ВходящееСообщение), "nerd");
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервереБезКонтекста
|
||||
Функция ДвоичныеДанныеМакета(ФорматИнтеграции)
|
||||
Функция ДвоичныеДанныеМакета(Знач ФорматИнтеграцииСтрокой)
|
||||
|
||||
Возврат ПолучитьОбщийМакет("пбп_" + ФорматИнтеграции + "Editor");
|
||||
Возврат ПолучитьОбщийМакет("пбп_" + ФорматИнтеграцииСтрокой + "Editor");
|
||||
|
||||
КонецФункции
|
||||
|
||||
@ -337,9 +459,33 @@
|
||||
Функция ПолучитьФорматИнтеграции(ФорматИнтеграции)
|
||||
|
||||
ИндексЗначенияПеречисления = Перечисления.пбп_ФорматыИнтеграций.Индекс(ФорматИнтеграции);
|
||||
ФорматИнтеграции = Метаданные.Перечисления.пбп_ФорматыИнтеграций.ЗначенияПеречисления[ИндексЗначенияПеречисления].Имя;
|
||||
ФорматИнтеграцииСтрокой = Метаданные.Перечисления.пбп_ФорматыИнтеграций
|
||||
.ЗначенияПеречисления[ИндексЗначенияПеречисления].Имя;
|
||||
|
||||
Возврат ФорматИнтеграции;
|
||||
Возврат ФорматИнтеграцииСтрокой;
|
||||
|
||||
КонецФункции
|
||||
|
||||
&НаКлиенте
|
||||
Процедура ОбработчикВыбораКаталогаСохранениеЗавершениеПослеВыбораВДиалоге(
|
||||
Результат, Знач ДополнительныеПараметры) Экспорт
|
||||
|
||||
Если Результат = Неопределено Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ПутьКФайлу = Результат[0];
|
||||
|
||||
ДвоичныеДанныеФайла = ОбработчикВыбораКаталогаСохранениеЗавершениеПослеВыбораВДиалогаНаСервере();
|
||||
ДвоичныеДанныеФайла.Записать(ПутьКФайлу);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервере
|
||||
Функция ОбработчикВыбораКаталогаСохранениеЗавершениеПослеВыбораВДиалогаНаСервере()
|
||||
|
||||
РеквизитОбъект = РеквизитФормыВЗначение("Объект");
|
||||
Возврат РеквизитОбъект.ПолучитьДанныеФайлаСообщения();
|
||||
|
||||
КонецФункции
|
||||
|
||||
|
23
src/cf/CommonModules/пбп_ИнтеграцииFTPSFTP.xml
Normal file
23
src/cf/CommonModules/пбп_ИнтеграцииFTPSFTP.xml
Normal file
@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.16">
|
||||
<CommonModule uuid="3044e570-3493-44fe-93db-ea28b6f22f3e">
|
||||
<Properties>
|
||||
<Name>пбп_ИнтеграцииFTPSFTP</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Интеграции с FTP / SFTP</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Global>false</Global>
|
||||
<ClientManagedApplication>false</ClientManagedApplication>
|
||||
<Server>true</Server>
|
||||
<ExternalConnection>true</ExternalConnection>
|
||||
<ClientOrdinaryApplication>false</ClientOrdinaryApplication>
|
||||
<ServerCall>false</ServerCall>
|
||||
<Privileged>false</Privileged>
|
||||
<ReturnValuesReuse>DontUse</ReturnValuesReuse>
|
||||
</Properties>
|
||||
</CommonModule>
|
||||
</MetaDataObject>
|
1456
src/cf/CommonModules/пбп_ИнтеграцииFTPSFTP/Ext/Module.bsl
Normal file
1456
src/cf/CommonModules/пбп_ИнтеграцииFTPSFTP/Ext/Module.bsl
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
23
src/cf/CommonModules/пбп_ИнтеграцииСлужебный.xml
Normal file
23
src/cf/CommonModules/пбп_ИнтеграцииСлужебный.xml
Normal file
@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.16">
|
||||
<CommonModule uuid="d26723ed-2cc8-44c8-afc8-1188b3e95995">
|
||||
<Properties>
|
||||
<Name>пбп_ИнтеграцииСлужебный</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Пбп интеграции служебный</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Global>false</Global>
|
||||
<ClientManagedApplication>false</ClientManagedApplication>
|
||||
<Server>true</Server>
|
||||
<ExternalConnection>true</ExternalConnection>
|
||||
<ClientOrdinaryApplication>false</ClientOrdinaryApplication>
|
||||
<ServerCall>false</ServerCall>
|
||||
<Privileged>false</Privileged>
|
||||
<ReturnValuesReuse>DontUse</ReturnValuesReuse>
|
||||
</Properties>
|
||||
</CommonModule>
|
||||
</MetaDataObject>
|
289
src/cf/CommonModules/пбп_ИнтеграцииСлужебный/Ext/Module.bsl
Normal file
289
src/cf/CommonModules/пбп_ИнтеграцииСлужебный/Ext/Module.bsl
Normal file
@ -0,0 +1,289 @@
|
||||
// Библиотека проектных подсистем для упрощения разработки архитектуры на 1С: Предприятие 8,
|
||||
// включая доработку типовых конфигураций.
|
||||
//
|
||||
// Copyright First BIT company
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
// URL: https://github.com/firstBitSportivnaya/PSSL/
|
||||
//
|
||||
|
||||
#Область СлужебныйПрограммныйИнтерфейс
|
||||
|
||||
#Область ИсторияИнтеграции
|
||||
|
||||
// Функция возвращает структуру со всеми необходимыми значениями для заполнения записи истории интеграции
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура - описание свойств истории интеграции
|
||||
//
|
||||
Функция ПолучитьСтруктуруЗаписиИстории() Экспорт
|
||||
|
||||
СтруктураЗаписиИстории = Новый Структура;
|
||||
СтруктураЗаписиИстории.Вставить("ИнтеграционныйПоток", Неопределено);
|
||||
СтруктураЗаписиИстории.Вставить("ВходящееСообщение", "");
|
||||
СтруктураЗаписиИстории.Вставить("ИсходящееСообщение", "");
|
||||
СтруктураЗаписиИстории.Вставить("ИнтегрируемаяСистема", Неопределено);
|
||||
СтруктураЗаписиИстории.Вставить("ОписаниеОшибки", "");
|
||||
СтруктураЗаписиИстории.Вставить("ПротоколОбмена", "");
|
||||
СтруктураЗаписиИстории.Вставить("ДатаНачалаИнтеграции", ТекущаяДатаСеанса());
|
||||
СтруктураЗаписиИстории.Вставить("ДлительностьВызова", 0);
|
||||
СтруктураЗаписиИстории.Вставить("ФорматИнтеграции", Перечисления.пбп_ФорматыИнтеграций.XML);
|
||||
СтруктураЗаписиИстории.Вставить("ИмяФайлаСообщения", "");
|
||||
СтруктураЗаписиИстории.Вставить("ФайлСообщения", Неопределено);
|
||||
ОбъектыИнтеграции = Новый ТаблицаЗначений;
|
||||
ОбъектыИнтеграции.Колонки.Добавить("ОбъектИнтеграции");
|
||||
ОбъектыИнтеграции.Колонки.Добавить("СозданОбновлен");
|
||||
СтруктураЗаписиИстории.Вставить("ОбъектыИнтеграции", ОбъектыИнтеграции);
|
||||
|
||||
Возврат СтруктураЗаписиИстории;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Процедура создает запись справочника История интеграции с информацией о событии интеграции
|
||||
//
|
||||
// Параметры:
|
||||
// СтруктураЗаписиИстории - Структура - описание действия (см. ПолучитьСтруктуруЗаписиИстории)
|
||||
// ЭтоЗагрузка - Булево - Истина если это Загрузка, Ложь если это Выгрузка
|
||||
//
|
||||
Процедура СоздатьСообщениеИсторииИнтеграции(СтруктураЗаписиИстории, ЭтоЗагрузка) Экспорт
|
||||
|
||||
УстановитьПривилегированныйРежим(Истина);
|
||||
|
||||
ДополнительноОбработатьЗапросыИнтеграцииПередЗаписьюВИсторию(СтруктураЗаписиИстории);
|
||||
|
||||
НовоеСообщение = Справочники.пбп_ИсторияИнтеграции.СоздатьЭлемент();
|
||||
НовоеСообщение.ДатаИнтеграции = ТекущаяДатаСеанса();
|
||||
НовоеСообщение.ДатаИнтеграцииВМиллисекундах = ТекущаяУниверсальнаяДатаВМиллисекундах();
|
||||
НовоеСообщение.Код = Новый УникальныйИдентификатор();
|
||||
НовоеСообщение.Ошибка = ЗначениеЗаполнено(СтруктураЗаписиИстории.ОписаниеОшибки);
|
||||
НовоеСообщение.Пользователь = пбп_ПользователиСлужебный.ТекущийПользователь();
|
||||
НовоеСообщение.ДлительностьОбмена = НовоеСообщение.ДатаИнтеграции - СтруктураЗаписиИстории.ДатаНачалаИнтеграции;
|
||||
НовоеСообщение.ДлительностьВызова = СтруктураЗаписиИстории.ДлительностьВызова;
|
||||
Если ЭтоЗагрузка Тогда
|
||||
Если НовоеСообщение.Ошибка Тогда
|
||||
НовоеСообщение.Статус = Перечисления.пбп_СтатусыИнтеграции.ОшибкаЗагрузки;
|
||||
Иначе
|
||||
НовоеСообщение.Статус = Перечисления.пбп_СтатусыИнтеграции.Загружено;
|
||||
КонецЕсли;
|
||||
Иначе
|
||||
Если НовоеСообщение.Ошибка Тогда
|
||||
НовоеСообщение.Статус = Перечисления.пбп_СтатусыИнтеграции.ОшибкаВыгрузки;
|
||||
Иначе
|
||||
НовоеСообщение.Статус = Перечисления.пбп_СтатусыИнтеграции.Выгружено;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
ЗаполнитьЗначенияСвойств(НовоеСообщение, СтруктураЗаписиИстории);
|
||||
Для Каждого Строка Из СтруктураЗаписиИстории.ОбъектыИнтеграции Цикл
|
||||
НоваяСтрока = НовоеСообщение.ОбъектыИнтеграции.Добавить();
|
||||
ЗаполнитьЗначенияСвойств(НоваяСтрока, Строка);
|
||||
КонецЦикла;
|
||||
|
||||
НовоеСообщение.Записать();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Процедура добавляет сообщения в протокол обмена через указанный разделитель
|
||||
//
|
||||
// Параметры:
|
||||
// СтруктураОтвета - Структура - см. ИнтеграцииСервер.ПолучитьСтруктуруЗаписиИстории
|
||||
// ТекстСообщения - Строка - Текст, который будет записан в протокол обмена
|
||||
// Разделитель - Строка - Разделитель записей
|
||||
Процедура ДобавитьЗаписьВПротоколОбмена(СтруктураОтвета, ТекстСообщения, Разделитель = "") Экспорт
|
||||
|
||||
Если ПустаяСтрока(Разделитель) Тогда
|
||||
Разделитель = ";" + Символы.ПС;
|
||||
КонецЕсли;
|
||||
|
||||
ВыводРазделителя = ?(ПустаяСтрока(СтруктураОтвета.ПротоколОбмена), "", Разделитель);
|
||||
|
||||
СтруктураОтвета.ПротоколОбмена = СтруктураОтвета.ПротоколОбмена + ВыводРазделителя + НСтр(ТекстСообщения);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти // ИсторияИнтеграции
|
||||
|
||||
#Область РаботаСДанными
|
||||
|
||||
// Возвращает структуру с настройками для интеграции
|
||||
//
|
||||
// Параметры:
|
||||
// НастройкаИнтеграции - СправочникСсылка.пбп_НастройкиИнтеграции - Ссылка на элемент справочника Настройки интеграции
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура
|
||||
Функция ПолучитьСтруктуруНастроекИнтеграции(НастройкаИнтеграции) Экспорт
|
||||
|
||||
УстановитьПривилегированныйРежим(Истина);
|
||||
|
||||
СтруктураНастроек = пбп_ОбщегоНазначенияСлужебный.ЗначенияРеквизитовОбъекта(
|
||||
НастройкаИнтеграции, "СтрокаПодключения, Порт, ИмяОбъекта");
|
||||
ДанныеБезопасногоХранилища = пбп_ОбщегоНазначенияСлужебный.ПрочитатьДанныеИзБезопасногоХранилища(НастройкаИнтеграции);
|
||||
|
||||
Для Каждого КлючИЗначение Из ДанныеБезопасногоХранилища Цикл
|
||||
СтруктураНастроек.Вставить(КлючИЗначение.Ключ, КлючИЗначение.Значение);
|
||||
КонецЦикла;
|
||||
|
||||
УстановитьПривилегированныйРежим(Ложь);
|
||||
|
||||
Возврат СтруктураНастроек;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Возвращает структуру с настройками для интеграции
|
||||
//
|
||||
// Параметры:
|
||||
// ИнтеграционныйПоток - СправочникСсылка.пбп_ИнтеграционныеПотоки -
|
||||
// ссылка на элемент справочника интеграционные потоки
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура
|
||||
Функция ПолучитьСтруктуруПотокаИНастроекИнтеграции(ИнтеграционныйПоток) Экспорт
|
||||
|
||||
СтруктураПотокаИНастроек = пбп_ОбщегоНазначенияСлужебный.ЗначенияРеквизитовОбъекта(
|
||||
ИнтеграционныйПоток, "НастройкаИнтеграции, ТочкаВхода");
|
||||
СтруктураНастроек = ПолучитьСтруктуруНастроекИнтеграции(СтруктураПотокаИНастроек.НастройкаИнтеграции);
|
||||
пбп_ОбщегоНазначенияСлужебныйКлиентСервер.ДополнитьСтруктуру(СтруктураПотокаИНастроек, СтруктураНастроек);
|
||||
|
||||
Возврат СтруктураПотокаИНастроек;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получает структуру параметров интеграционного потока со значениями по умолчанию
|
||||
//
|
||||
// Параметры:
|
||||
// ИнтеграционныйПоток - СправочникСсылка.пбп_ИнтеграционныеПотоки - ссылка на метод, параметры которого получаем.
|
||||
// ЗаполнятьПоУмолчанию - Булево - добавлять ли в возвращаемую структуру значения по умолчанию
|
||||
// - Ложь - возвращает структуру вида ИмяПараметра<Строка>:ТипЗначения<ПеречислениеСсылка.пбп_ТипыJSON>
|
||||
// - Истина - возвращает структуру вида ИмяПараметра<Строка>:ЗначениеПоУмолчанию<Строка>
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура
|
||||
//
|
||||
Функция ПолучитьСтруктуруПараметровВхода(ИнтеграционныйПоток, ЗаполнятьПоУмолчанию = Ложь) Экспорт
|
||||
|
||||
Возврат Справочники.пбп_ИнтеграционныеПотоки.ПолучитьСтруктуруПараметровВхода(
|
||||
ИнтеграционныйПоток, ЗаполнятьПоУмолчанию);
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получает предопределенный метод интеграции по идентификатору настройки
|
||||
//
|
||||
// Параметры:
|
||||
// ИдентификаторНастройки - Строка -
|
||||
// строковый идентификатор предопределенного значения, реквизит ИдентификаторНастройки
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// СправочникСсылка.пбп_МетодыИнтеграции - искомый метод интеграции
|
||||
//
|
||||
Функция ИнтеграционныйПоток(ИдентификаторНастройки) Экспорт
|
||||
Возврат Справочники.пбп_ИнтеграционныеПотоки.НайтиПоРеквизиту("ИдентификаторНастройки", ИдентификаторНастройки);
|
||||
КонецФункции
|
||||
|
||||
// Получает предопределенную интегрируемую систему по идентификатору настройки
|
||||
//
|
||||
// Параметры:
|
||||
// ИдентификаторНастройки - Строка -
|
||||
// строковый идентификатор предопределенного значения, реквизит ИдентификаторНастройки
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// СправочникСсылка.пбп_ИнтегрируемыеСистемы - искомая система интеграции
|
||||
//
|
||||
Функция ИнтегрируемаяСистема(ИдентификаторНастройки) Экспорт
|
||||
Возврат Справочники.пбп_ИнтегрируемыеСистемы.НайтиПоРеквизиту("ИдентификаторНастройки", ИдентификаторНастройки);
|
||||
КонецФункции
|
||||
|
||||
// Получает предопределенную настройку интеграции по идентификатору настройки
|
||||
//
|
||||
// Параметры:
|
||||
// ИдентификаторНастройки - Строка -
|
||||
// строковый идентификатор предопределенного значения, реквизит ИдентификаторНастройки
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// СправочникСсылка.пбп_НастройкиИнтеграции - искомая настройка интеграции
|
||||
//
|
||||
Функция НастройкаИнтеграции(ИдентификаторНастройки) Экспорт
|
||||
Возврат Справочники.пбп_НастройкиИнтеграции.НайтиПоРеквизиту("ИдентификаторНастройки", ИдентификаторНастройки);
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти // РаботаСДанными
|
||||
|
||||
#КонецОбласти // СлужебныйПрограммныйИнтерфейс
|
||||
|
||||
#Область СлужебныеПроцедурыИФункции
|
||||
|
||||
// Процедура обрабатывает запросы в структуре записи истории
|
||||
//
|
||||
// Параметры:
|
||||
// СтруктураЗаписиИстории - Структура - см. ПолучитьСтруктуруЗаписиИстории
|
||||
//
|
||||
Процедура ДополнительноОбработатьЗапросыИнтеграцииПередЗаписьюВИсторию(СтруктураЗаписиИстории)
|
||||
|
||||
Если НЕ ПустаяСтрока(СтруктураЗаписиИстории.ИсходящееСообщение)
|
||||
И СтрНайти(СтруктураЗаписиИстории.ИсходящееСообщение, "xml") <> 0 Тогда
|
||||
|
||||
ОчиститьДлинныеАтрибутыСообщенияXML(СтруктураЗаписиИстории.ИсходящееСообщение);
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Если НЕ ПустаяСтрока(СтруктураЗаписиИстории.ВходящееСообщение)
|
||||
И СтрНайти(СтруктураЗаписиИстории.ВходящееСообщение, "xml") <> 0 Тогда
|
||||
|
||||
ОчиститьДлинныеАтрибутыСообщенияXML(СтруктураЗаписиИстории.ВходящееСообщение);
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Процедура очищает XML строку от длинных записей (например base64 строк)
|
||||
//
|
||||
// Параметры:
|
||||
// XMLСтрока - Строка - XML-текст, которые необходимо преобразовать
|
||||
//
|
||||
Процедура ОчиститьДлинныеАтрибутыСообщенияXML(XMLСтрока)
|
||||
|
||||
ЧтениеXML = Новый ЧтениеXML;
|
||||
ЧтениеXML.УстановитьСтроку(XMLСтрока);
|
||||
|
||||
ПостроительDOM = Новый ПостроительDOM;
|
||||
ДокументDOM = ПостроительDOM.Прочитать(ЧтениеXML);
|
||||
|
||||
ТребуетсяПерезаписатьXML = Ложь;
|
||||
|
||||
// Перебрать все узлы
|
||||
МаксимальныйРазмерСтроки = 1000;
|
||||
ИтераторДерева = Новый ОбходДереваDOM(ДокументDOM);
|
||||
Пока ИтераторДерева.СледующийУзел() <> Неопределено Цикл
|
||||
Если ТипЗнч(ИтераторДерева.ТекущийУзел) = Тип("ЭлементDOM") Тогда
|
||||
Если СтрДлина(ИтераторДерева.ТекущийУзел.ТекстовоеСодержимое) > МаксимальныйРазмерСтроки Тогда
|
||||
ИтераторДерева.ТекущийУзел.ТекстовоеСодержимое = "X";
|
||||
ТребуетсяПерезаписатьXML = Истина;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
|
||||
Если ТребуетсяПерезаписатьXML Тогда
|
||||
|
||||
ЗаписьXML = Новый ЗаписьXML;
|
||||
ЗаписьXML.УстановитьСтроку(Новый ПараметрыЗаписиXML(, , Истина, Истина));
|
||||
|
||||
ЗаписьDOM = Новый ЗаписьDOM;
|
||||
ЗаписьDOM.Записать(ДокументDOM, ЗаписьXML);
|
||||
|
||||
XMLСтрока = ЗаписьXML.Закрыть();
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти // СлужебныеПроцедурыИФункции
|
@ -74,7 +74,7 @@
|
||||
Процедура ПриДобавленииПодсистемы(Описание) Экспорт
|
||||
|
||||
Описание.Имя = "ПроектнаяБиблиотекаПодсистем";
|
||||
Описание.Версия = "1.0.2.6";
|
||||
Описание.Версия = "1.0.2.7";
|
||||
|
||||
// Требуется библиотека стандартных подсистем.
|
||||
Описание.ТребуемыеПодсистемы.Добавить("СтандартныеПодсистемы");
|
||||
|
@ -132,21 +132,17 @@
|
||||
НоваяНастройка.Наименование = "Интеграция с системой N";
|
||||
НоваяНастройка.ИдентификаторНастройки = "ИнтеграцияССистемойN";
|
||||
|
||||
НаименованиеРеквизита = "ИдентификаторНастройки";
|
||||
|
||||
НоваяНастройка = Результат.Добавить();
|
||||
НоваяНастройка.Наименование = "Rabbit Mq";
|
||||
НоваяНастройка.ИдентификаторНастройки = "RabbitMq";
|
||||
НоваяНастройка.ИнтегрируемаяСистема = Справочники.пбп_ИнтегрируемыеСистемы.НайтиПоРеквизиту(
|
||||
НаименованиеРеквизита, "RabbitMq");
|
||||
НоваяНастройка.ИнтегрируемаяСистема = пбп_ИнтеграцииСлужебный.ИнтегрируемаяСистема("RabbitMq");
|
||||
НоваяНастройка.ТипИнтеграции = Справочники.пбп_ТипыИнтеграций.RabbitMq;
|
||||
НоваяНастройка.ТипАвторизации = Перечисления.пбп_ТипыАвторизации.Базовая;
|
||||
|
||||
НоваяНастройка = Результат.Добавить();
|
||||
НоваяНастройка.Наименование = "Simple Kafka";
|
||||
НоваяНастройка.ИдентификаторНастройки = "SimpleKafka";
|
||||
НоваяНастройка.ИнтегрируемаяСистема = Справочники.пбп_ИнтегрируемыеСистемы.НайтиПоРеквизиту(
|
||||
НаименованиеРеквизита, "Kafka");
|
||||
НоваяНастройка.ИнтегрируемаяСистема = пбп_ИнтеграцииСлужебный.ИнтегрируемаяСистема("Kafka");
|
||||
НоваяНастройка.ТипИнтеграции = Справочники.пбп_ТипыИнтеграций.Kafka;
|
||||
НоваяНастройка.ТипАвторизации = Перечисления.пбп_ТипыАвторизации.Базовая;
|
||||
|
||||
@ -154,8 +150,7 @@
|
||||
НоваяНастройка.Наименование = "Active directory";
|
||||
НоваяНастройка.ИдентификаторНастройки = "ActiveDirectory";
|
||||
НоваяНастройка.СтрокаПодключения = "Provider=""ADsDSOObject""";
|
||||
НоваяНастройка.ИнтегрируемаяСистема = Справочники.пбп_ИнтегрируемыеСистемы.НайтиПоРеквизиту(
|
||||
НаименованиеРеквизита, "ActiveDirectory");
|
||||
НоваяНастройка.ИнтегрируемаяСистема = пбп_ИнтеграцииСлужебный.ИнтегрируемаяСистема("ActiveDirectory");
|
||||
НоваяНастройка.ТипИнтеграции = Справочники.пбп_ТипыИнтеграций.COM;
|
||||
НоваяНастройка.ТипАвторизации = Перечисления.пбп_ТипыАвторизации.Базовая;
|
||||
НоваяНастройка.ИмяОбъекта = "ADODB.Connection";
|
||||
|
23
src/cf/CommonModules/пбп_ФайловаяСистемаКлиент.xml
Normal file
23
src/cf/CommonModules/пбп_ФайловаяСистемаКлиент.xml
Normal file
@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.16">
|
||||
<CommonModule uuid="3153c6cd-3e13-4414-9f0a-d32f2e9f505c">
|
||||
<Properties>
|
||||
<Name>пбп_ФайловаяСистемаКлиент</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Файловая система клиент</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Global>false</Global>
|
||||
<ClientManagedApplication>true</ClientManagedApplication>
|
||||
<Server>false</Server>
|
||||
<ExternalConnection>false</ExternalConnection>
|
||||
<ClientOrdinaryApplication>false</ClientOrdinaryApplication>
|
||||
<ServerCall>false</ServerCall>
|
||||
<Privileged>false</Privileged>
|
||||
<ReturnValuesReuse>DontUse</ReturnValuesReuse>
|
||||
</Properties>
|
||||
</CommonModule>
|
||||
</MetaDataObject>
|
100
src/cf/CommonModules/пбп_ФайловаяСистемаКлиент/Ext/Module.bsl
Normal file
100
src/cf/CommonModules/пбп_ФайловаяСистемаКлиент/Ext/Module.bsl
Normal file
@ -0,0 +1,100 @@
|
||||
// Библиотека проектных подсистем для упрощения разработки архитектуры на 1С: Предприятие 8,
|
||||
// включая доработку типовых конфигураций.
|
||||
//
|
||||
// Copyright First BIT company
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
// URL: https://github.com/firstBitSportivnaya/PSSL/
|
||||
//
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Файловая система клиент: аналог модуля БСП
|
||||
|
||||
#Область ПрограммныйИнтерфейс
|
||||
|
||||
// Аналог метода БСП. Получение имени временного каталога.
|
||||
//
|
||||
// Параметры:
|
||||
// Оповещение - ОписаниеОповещения - оповещение о результате получения со следующими параметрами.
|
||||
// -- ИмяКаталога - Строка - путь к созданному каталогу.
|
||||
// -- ДополнительныеПараметры - Структура - значение, которое было указано при создании объекта ОписаниеОповещения.
|
||||
// Расширение - Строка - суффикс в имени каталога, который поможет идентифицировать каталог при анализе.
|
||||
//
|
||||
Процедура СоздатьВременныйКаталог(Знач Оповещение, Расширение = "") Экспорт
|
||||
|
||||
Контекст = Новый Структура;
|
||||
Контекст.Вставить("Оповещение", Оповещение);
|
||||
Контекст.Вставить("Расширение", Расширение);
|
||||
|
||||
Оповещение = Новый ОписаниеОповещения("СоздатьВременныйКаталогПослеПроверкиРасширенияРаботыСФайлами",
|
||||
пбп_ФайловаяСистемаСлужебныйКлиент, Контекст);
|
||||
ПодключитьРасширениеДляРаботыСФайлами(Оповещение,
|
||||
НСтр("ru = 'Для создания временной папки установите расширение для работы с 1С:Предприятием.'"), Ложь);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Аналог метода БСП. Предлагает пользователю установить расширение для работы с 1С:Предприятием в веб-клиенте.
|
||||
// Предназначена для использования в начале участков кода, в которых ведется работа с файлами.
|
||||
//
|
||||
// Параметры:
|
||||
// ОписаниеОповещенияОЗакрытии - ОписаниеОповещения - описание процедуры, которая будет вызвана после закрытия
|
||||
// формы со следующими параметрами:
|
||||
// -- РасширениеПодключено - Булево - Истина, если расширение было подключено.
|
||||
// -- ДополнительныеПараметры - Произвольный - параметры, заданные в ОписаниеОповещенияОЗакрытии.
|
||||
// ТекстПредложения - Строка - текст сообщения. Если не указан, то выводится текст по умолчанию.
|
||||
// ВозможноПродолжениеБезУстановки - Булево - если Истина, будет показана кнопка ПродолжитьБезУстановки,
|
||||
// если Ложь, будет показана кнопка Отмена.
|
||||
//
|
||||
// Пример:
|
||||
//
|
||||
// Оповещение = Новый ОписаниеОповещения("ПечатьДокументаЗавершение", ЭтотОбъект);
|
||||
// ТекстСообщения = НСтр("ru = 'Для печати документа необходимо установить расширение для работы с 1С:Предприятием.'");
|
||||
// ФайловаяСистемаКлиент.ПодключитьРасширениеДляРаботыСФайлами(Оповещение, ТекстСообщения);
|
||||
//
|
||||
// Процедура ПечатьДокументаЗавершение(РасширениеПодключено, ДополнительныеПараметры) Экспорт
|
||||
// Если РасширениеПодключено Тогда
|
||||
// // код печати документа, рассчитывающий на то, что расширение подключено.
|
||||
// // ...
|
||||
// Иначе
|
||||
// // код печати документа, который работает без подключенного расширения.
|
||||
// // ...
|
||||
// КонецЕсли;
|
||||
//
|
||||
Процедура ПодключитьРасширениеДляРаботыСФайлами(
|
||||
ОписаниеОповещенияОЗакрытии,
|
||||
ТекстПредложения = "",
|
||||
ВозможноПродолжениеБезУстановки = Истина) Экспорт
|
||||
|
||||
ОписаниеОповещенияЗавершение = Новый ОписаниеОповещения(
|
||||
"НачатьПодключениеРасширенияРаботыСФайламиПриОтветеНаВопросОбУстановке", пбп_ФайловаяСистемаСлужебныйКлиент,
|
||||
ОписаниеОповещенияОЗакрытии);
|
||||
|
||||
#Если Не ВебКлиент Тогда
|
||||
// В мобильном, тонком и толстом клиентах расширение подключено всегда.
|
||||
ВыполнитьОбработкуОповещения(ОписаниеОповещенияЗавершение, "ПодключениеНеТребуется");
|
||||
Возврат;
|
||||
#КонецЕсли
|
||||
|
||||
Контекст = Новый Структура;
|
||||
Контекст.Вставить("ОписаниеОповещенияЗавершение", ОписаниеОповещенияЗавершение);
|
||||
Контекст.Вставить("ТекстПредложения", ТекстПредложения);
|
||||
Контекст.Вставить("ВозможноПродолжениеБезУстановки", ВозможноПродолжениеБезУстановки);
|
||||
|
||||
Оповещение = Новый ОписаниеОповещения(
|
||||
"НачатьПодключениеРасширенияРаботыСФайламиПриУстановкеРасширения", пбп_ФайловаяСистемаСлужебныйКлиент, Контекст);
|
||||
НачатьПодключениеРасширенияРаботыСФайлами(Оповещение);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти // ПрограммныйИнтерфейс
|
@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.16">
|
||||
<CommonModule uuid="a15ee07d-6ab7-481b-9078-56e674cbf227">
|
||||
<Properties>
|
||||
<Name>пбп_ФайловаяСистемаКлиентПереадресация</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Файловая система клиент переадресация</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Global>false</Global>
|
||||
<ClientManagedApplication>true</ClientManagedApplication>
|
||||
<Server>false</Server>
|
||||
<ExternalConnection>false</ExternalConnection>
|
||||
<ClientOrdinaryApplication>false</ClientOrdinaryApplication>
|
||||
<ServerCall>false</ServerCall>
|
||||
<Privileged>false</Privileged>
|
||||
<ReturnValuesReuse>DontUse</ReturnValuesReuse>
|
||||
</Properties>
|
||||
</CommonModule>
|
||||
</MetaDataObject>
|
@ -0,0 +1,51 @@
|
||||
// Библиотека проектных подсистем для упрощения разработки архитектуры на 1С: Предприятие 8,
|
||||
// включая доработку типовых конфигураций.
|
||||
//
|
||||
// Copyright First BIT company
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
// URL: https://github.com/firstBitSportivnaya/PSSL/
|
||||
//
|
||||
|
||||
#Область СлужебныйПрограммныйИнтерфейс
|
||||
|
||||
// См. пбп_ФайловаяСистемаКлиент.СоздатьВременныйКаталог.
|
||||
Процедура СоздатьВременныйКаталог(Знач Оповещение, Расширение = "") Экспорт
|
||||
|
||||
Модуль = ПолучитьМодуль();
|
||||
Модуль.СоздатьВременныйКаталог(Оповещение, Расширение);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// См. пбп_ФайловаяСистемаКлиент.ПодключитьРасширениеДляРаботыСФайлами.
|
||||
Процедура ПодключитьРасширениеДляРаботыСФайлами(
|
||||
ОписаниеОповещенияОЗакрытии,
|
||||
ТекстПредложения = "",
|
||||
ВозможноПродолжениеБезУстановки = Истина) Экспорт
|
||||
|
||||
Модуль = ПолучитьМодуль();
|
||||
Модуль.ПодключитьРасширениеДляРаботыСФайлами(ОписаниеОповещенияОЗакрытии,
|
||||
ТекстПредложения, ВозможноПродолжениеБезУстановки);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область СлужебныеПроцедурыИФункции
|
||||
|
||||
Функция ПолучитьМодуль()
|
||||
Возврат пбп_ОбщегоНазначенияКлиент.ОбщийМодуль("ФайловаяСистемаКлиент", "пбп_ФайловаяСистемаКлиент");
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
@ -29,22 +29,22 @@
|
||||
КонецПроцедуры
|
||||
|
||||
// См. пбп_ФайловаяСистема.ПараметрыЗапускаПрограммы.
|
||||
Процедура ПараметрыЗапускаПрограммы() Экспорт
|
||||
Функция ПараметрыЗапускаПрограммы() Экспорт
|
||||
|
||||
Модуль = ПолучитьМодуль();
|
||||
Модуль.ПараметрыЗапускаПрограммы();
|
||||
Возврат Модуль.ПараметрыЗапускаПрограммы();
|
||||
|
||||
КонецПроцедуры
|
||||
КонецФункции
|
||||
|
||||
// См. пбп_ФайловаяСистема.ЗапуститьПрограмму.
|
||||
Процедура ЗапуститьПрограмму(Знач КомандаЗапуска, ПараметрыЗапускаПрограммы = Неопределено) Экспорт
|
||||
Функция ЗапуститьПрограмму(Знач КомандаЗапуска, ПараметрыЗапускаПрограммы = Неопределено) Экспорт
|
||||
|
||||
Модуль = ПолучитьМодуль();
|
||||
// BSLLS:ExternalAppStarting-off
|
||||
Модуль.ЗапуститьПрограмму(КомандаЗапуска, ПараметрыЗапускаПрограммы);
|
||||
Возврат Модуль.ЗапуститьПрограмму(КомандаЗапуска, ПараметрыЗапускаПрограммы);
|
||||
// BSLLS:ExternalAppStarting-on
|
||||
|
||||
КонецПроцедуры
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
|
23
src/cf/CommonModules/пбп_ФайловаяСистемаСлужебныйКлиент.xml
Normal file
23
src/cf/CommonModules/пбп_ФайловаяСистемаСлужебныйКлиент.xml
Normal file
@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.16">
|
||||
<CommonModule uuid="84c649b8-d05c-412e-93c2-d71afadb9f2f">
|
||||
<Properties>
|
||||
<Name>пбп_ФайловаяСистемаСлужебныйКлиент</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Файловая система служебный клиент</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
<Global>false</Global>
|
||||
<ClientManagedApplication>true</ClientManagedApplication>
|
||||
<Server>false</Server>
|
||||
<ExternalConnection>false</ExternalConnection>
|
||||
<ClientOrdinaryApplication>false</ClientOrdinaryApplication>
|
||||
<ServerCall>false</ServerCall>
|
||||
<Privileged>false</Privileged>
|
||||
<ReturnValuesReuse>DontUse</ReturnValuesReuse>
|
||||
</Properties>
|
||||
</CommonModule>
|
||||
</MetaDataObject>
|
@ -0,0 +1,120 @@
|
||||
// Библиотека проектных подсистем для упрощения разработки архитектуры на 1С: Предприятие 8,
|
||||
// включая доработку типовых конфигураций.
|
||||
//
|
||||
// Copyright First BIT company
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
// URL: https://github.com/firstBitSportivnaya/PSSL/
|
||||
//
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Файловая система служебный клиент: аналог модуля БСП
|
||||
|
||||
#Область СлужебныйПрограммныйИнтерфейс
|
||||
|
||||
#Область РасширениеРаботыСФайлами
|
||||
|
||||
Процедура НачатьПодключениеРасширенияРаботыСФайламиПриУстановкеРасширения(Подключено, Контекст) Экспорт
|
||||
|
||||
// Если расширение и так уже подключено, незачем про него спрашивать.
|
||||
Если Подключено Тогда
|
||||
ВыполнитьОбработкуОповещения(Контекст.ОписаниеОповещенияЗавершение, "ПодключениеНеТребуется");
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ВызватьИсключение НСтр("ru = 'Невозможно работать с файловой системой из браузера';");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура НачатьПодключениеРасширенияРаботыСФайламиПриОтветеНаВопросОбУстановке(Действие, ОповещениеОЗакрытии) Экспорт
|
||||
|
||||
РасширениеПодключено = (Действие = "РасширениеПодключено" Или Действие = "ПодключениеНеТребуется");
|
||||
|
||||
ВыполнитьОбработкуОповещения(ОповещениеОЗакрытии, РасширениеПодключено);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти // РасширениеРаботыСФайлами
|
||||
|
||||
#Область ВременныеФайлы
|
||||
|
||||
#Область СоздатьВременныйКаталог
|
||||
|
||||
// Аналог метода БСП. Продолжение процедуры ФайловаяСистемаКлиент.СоздатьВременныйКаталог.
|
||||
//
|
||||
// Параметры:
|
||||
// РасширениеПодключено - Булево
|
||||
// Контекст - Структура:
|
||||
// * Оповещение - ОписаниеОповещения
|
||||
// * Расширение - Строка
|
||||
//
|
||||
Процедура СоздатьВременныйКаталогПослеПроверкиРасширенияРаботыСФайлами(РасширениеПодключено, Контекст) Экспорт
|
||||
|
||||
Если РасширениеПодключено Тогда
|
||||
Оповещение = Новый ОписаниеОповещения(
|
||||
"СоздатьВременныйКаталогПослеПолученияВременногоКаталога", ЭтотОбъект, Контекст,
|
||||
"СоздатьВременныйКаталогПриОбработкеОшибки", ЭтотОбъект);
|
||||
НачатьПолучениеКаталогаВременныхФайлов(Оповещение);
|
||||
Иначе
|
||||
СоздатьВременныйКаталогОповеститьОбОшибке(НСтр("ru = 'Не удалось установить расширение для работы с 1С:Предприятием.'"), Контекст);
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Аналог метода БСП. Продолжение процедуры ФайловаяСистемаКлиент.СоздатьВременныйКаталог.
|
||||
//
|
||||
// Параметры:
|
||||
// ИмяКаталогаВременныхФайлов - Строка
|
||||
// Контекст - Структура:
|
||||
// * Оповещение - ОписаниеОповещения
|
||||
// * Расширение - Строка
|
||||
//
|
||||
Процедура СоздатьВременныйКаталогПослеПолученияВременногоКаталога(ИмяКаталогаВременныхФайлов, Контекст) Экспорт
|
||||
|
||||
Оповещение = Контекст.Оповещение;
|
||||
Расширение = Контекст.Расширение;
|
||||
|
||||
ИмяКаталога = "v8_" + Строка(Новый УникальныйИдентификатор);
|
||||
|
||||
Если Не ПустаяСтрока(Расширение) Тогда
|
||||
ИмяКаталога = ИмяКаталога + "." + Расширение;
|
||||
КонецЕсли;
|
||||
|
||||
НачатьСозданиеКаталога(Оповещение, ИмяКаталогаВременныхФайлов + ИмяКаталога);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Аналог метода БСП. Продолжение процедуры ФайловаяСистемаКлиент.СоздатьВременныйКаталог.
|
||||
Процедура СоздатьВременныйКаталогПриОбработкеОшибки(ИнформацияОбОшибке, СтандартнаяОбработка, Контекст) Экспорт
|
||||
|
||||
СтандартнаяОбработка = Ложь;
|
||||
ОписаниеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке);
|
||||
СоздатьВременныйКаталогОповеститьОбОшибке(ОписаниеОшибки, Контекст);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Аналог метода БСП. Продолжение процедуры ФайловаяСистемаКлиент.СоздатьВременныйКаталог.
|
||||
Процедура СоздатьВременныйКаталогОповеститьОбОшибке(ОписаниеОшибки, Контекст)
|
||||
|
||||
ПоказатьПредупреждение(, ОписаниеОшибки);
|
||||
ИмяКаталога = "";
|
||||
ВыполнитьОбработкуОповещения(Контекст.Оповещение, ИмяКаталога);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти // СлужебныйПрограммныйИнтерфейс
|
@ -57,7 +57,7 @@
|
||||
<xr:Item xsi:type="xr:MDObjectRef">Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</xr:Item>
|
||||
</DefaultRoles>
|
||||
<Vendor>Первый БИТ</Vendor>
|
||||
<Version>1.0.2.6</Version>
|
||||
<Version>1.0.2.7</Version>
|
||||
<UpdateCatalogAddress/>
|
||||
<IncludeHelpInContents>false</IncludeHelpInContents>
|
||||
<UseManagedFormInOrdinaryApplication>false</UseManagedFormInOrdinaryApplication>
|
||||
@ -266,6 +266,7 @@
|
||||
<Role>пбп_ЧтениеПланаВидовХарактеристикПредопределенныеЗначения</Role>
|
||||
<Role>пбп_ЧтениеРегистраСведенийСоответствияОбъектовИБ</Role>
|
||||
<Role>пбп_ЧтениеТиповСоответствияОбъектовИБ</Role>
|
||||
<Role>пбп_ПросмотрИсторииИнтеграции</Role>
|
||||
<Role>ПолныеПрава</Role>
|
||||
<CommonTemplate>пбп_BSLEditor</CommonTemplate>
|
||||
<CommonTemplate>пбп_JSONEditor</CommonTemplate>
|
||||
@ -278,6 +279,8 @@
|
||||
<CommonModule>пбп_ЗагрузкаФайлаЧерезТабличныйДокументВызовСервера</CommonModule>
|
||||
<CommonModule>пбп_ЗагрузкаФайлаЧерезТабличныйДокументКлиент</CommonModule>
|
||||
<CommonModule>пбп_ИнтеграцииСервер</CommonModule>
|
||||
<CommonModule>пбп_ИнтеграцииСлужебный</CommonModule>
|
||||
<CommonModule>пбп_ИнтеграцииFTPSFTP</CommonModule>
|
||||
<CommonModule>пбп_КоннекторHTTP</CommonModule>
|
||||
<CommonModule>пбп_МетодыРегламентныхЗаданийСервер</CommonModule>
|
||||
<CommonModule>пбп_МодификацияКонфигурацииКлиентПереопределяемый</CommonModule>
|
||||
@ -320,6 +323,9 @@
|
||||
<CommonModule>пбп_СхемыЗапросов</CommonModule>
|
||||
<CommonModule>пбп_ФайловаяСистема</CommonModule>
|
||||
<CommonModule>пбп_ФайловаяСистемаПереадресация</CommonModule>
|
||||
<CommonModule>пбп_ФайловаяСистемаКлиентПереадресация</CommonModule>
|
||||
<CommonModule>пбп_ФайловаяСистемаКлиент</CommonModule>
|
||||
<CommonModule>пбп_ФайловаяСистемаСлужебныйКлиент</CommonModule>
|
||||
<EventSubscription>пбп_ДокументыОбработкаЗаполнения</EventSubscription>
|
||||
<EventSubscription>пбп_ДокументыОбработкаПроведения</EventSubscription>
|
||||
<EventSubscription>пбп_ДокументыОбработкаПроверкиЗаполнения</EventSubscription>
|
||||
|
15
src/cf/Roles/пбп_ПросмотрИсторииИнтеграции.xml
Normal file
15
src/cf/Roles/пбп_ПросмотрИсторииИнтеграции.xml
Normal file
@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<MetaDataObject xmlns="http://v8.1c.ru/8.3/MDClasses" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:cmi="http://v8.1c.ru/8.2/managed-application/cmi" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows" xmlns:xen="http://v8.1c.ru/8.3/xcf/enums" xmlns:xpr="http://v8.1c.ru/8.3/xcf/predef" xmlns:xr="http://v8.1c.ru/8.3/xcf/readable" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.16">
|
||||
<Role uuid="9c02b144-7a5b-40b9-a28c-80b3655779ca">
|
||||
<Properties>
|
||||
<Name>пбп_ПросмотрИсторииИнтеграции</Name>
|
||||
<Synonym>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Просмотр истории интеграции</v8:content>
|
||||
</v8:item>
|
||||
</Synonym>
|
||||
<Comment/>
|
||||
</Properties>
|
||||
</Role>
|
||||
</MetaDataObject>
|
44
src/cf/Roles/пбп_ПросмотрИсторииИнтеграции/Ext/Rights.xml
Normal file
44
src/cf/Roles/пбп_ПросмотрИсторииИнтеграции/Ext/Rights.xml
Normal file
@ -0,0 +1,44 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Rights xmlns="http://v8.1c.ru/8.2/roles" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Rights" version="2.16">
|
||||
<setForNewObjects>false</setForNewObjects>
|
||||
<setForAttributesByDefault>true</setForAttributesByDefault>
|
||||
<independentRightsOfChildObjects>false</independentRightsOfChildObjects>
|
||||
<object>
|
||||
<name>Configuration.ПроектнаяБиблиотекаПодсистем</name>
|
||||
<right>
|
||||
<name>MainWindowModeNormal</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>MainWindowModeWorkplace</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>MainWindowModeEmbeddedWorkplace</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>MainWindowModeFullscreenWorkplace</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>MainWindowModeKiosk</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>AnalyticsSystemClient</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
<object>
|
||||
<name>Catalog.пбп_ИсторияИнтеграции</name>
|
||||
<right>
|
||||
<name>Read</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
<right>
|
||||
<name>View</name>
|
||||
<value>true</value>
|
||||
</right>
|
||||
</object>
|
||||
</Rights>
|
@ -46,6 +46,9 @@
|
||||
<xr:Item xsi:type="xr:MDObjectRef">DefinedType.пбп_Пользователи</xr:Item>
|
||||
<xr:Item xsi:type="xr:MDObjectRef">DefinedType.пбп_УчетныеЗаписиЭлектроннойПочты</xr:Item>
|
||||
<xr:Item xsi:type="xr:MDObjectRef">Enum.пбп_ТипыАвторизации</xr:Item>
|
||||
<xr:Item xsi:type="xr:MDObjectRef">Role.пбп_ПросмотрИсторииИнтеграции</xr:Item>
|
||||
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.пбп_ИнтеграцииСлужебный</xr:Item>
|
||||
<xr:Item xsi:type="xr:MDObjectRef">CommonModule.пбп_ИнтеграцииFTPSFTP</xr:Item>
|
||||
</Content>
|
||||
</Properties>
|
||||
<ChildObjects/>
|
||||
|
Loading…
Reference in New Issue
Block a user