Initial commit: mobile TSD config with UT11 sync templates and receipt/order scanning logic.

This commit is contained in:
kykaevv 2026-09-01 13:07:34 +03:00
commit fb7c0484f5
483 changed files with 102323 additions and 0 deletions

View File

@ -0,0 +1,881 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Catalog uuid="dff8b4a3-f85f-41e3-8891-8105e9274b0a">
<InternalInfo>
<xr:GeneratedType name="CatalogObject.ДрайверыОборудования" category="Object">
<xr:TypeId>ac16ac19-01c7-4d4f-9e91-25b196f88fd5</xr:TypeId>
<xr:ValueId>026e9869-311f-44ba-98bb-075ef3e90d03</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogRef.ДрайверыОборудования" category="Ref">
<xr:TypeId>dd1135c6-5831-4a84-ad4f-3e115b419321</xr:TypeId>
<xr:ValueId>fcf19d05-2f82-4cb6-bf42-c85b317531ad</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogSelection.ДрайверыОборудования" category="Selection">
<xr:TypeId>26dd1f20-f948-439a-b868-af93e0636552</xr:TypeId>
<xr:ValueId>01d398fe-52db-46f3-ab89-4e4873107e9d</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogList.ДрайверыОборудования" category="List">
<xr:TypeId>c7ae806e-409a-44c3-996d-3da0406f7073</xr:TypeId>
<xr:ValueId>92322fe9-00aa-4760-8f5a-74b04f1753b8</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogManager.ДрайверыОборудования" category="Manager">
<xr:TypeId>5b34a4b9-e75a-4718-8511-64e53dedc37f</xr:TypeId>
<xr:ValueId>6d46b6a0-67af-4dc0-b62d-74c83ef7de7b</xr:ValueId>
</xr:GeneratedType>
</InternalInfo>
<Properties>
<Name>ДрайверыОборудования</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Драйверы оборудования</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Hierarchical>false</Hierarchical>
<HierarchyType>HierarchyFoldersAndItems</HierarchyType>
<LimitLevelCount>false</LimitLevelCount>
<LevelCount>2</LevelCount>
<FoldersOnTop>true</FoldersOnTop>
<UseStandardCommands>true</UseStandardCommands>
<Owners/>
<SubordinationUse>ToItems</SubordinationUse>
<CodeLength>0</CodeLength>
<DescriptionLength>100</DescriptionLength>
<CodeType>Number</CodeType>
<CodeAllowedLength>Variable</CodeAllowedLength>
<CodeSeries>WholeCatalog</CodeSeries>
<CheckUnique>false</CheckUnique>
<Autonumbering>false</Autonumbering>
<DefaultPresentation>AsDescription</DefaultPresentation>
<StandardAttributes>
<xr:StandardAttribute name="PredefinedDataName">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Predefined">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Ref">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="DeletionMark">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="IsFolder">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Owner">
<xr:LinkByType/>
<xr:FillChecking>ShowError</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>true</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>Deny</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Parent">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>true</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Description">
<xr:LinkByType/>
<xr:FillChecking>ShowError</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование драйвера оборудования</v8:content>
</v8:item>
</xr:ToolTip>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Code">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
</StandardAttributes>
<Characteristics/>
<PredefinedDataUpdate>DontAutoUpdate</PredefinedDataUpdate>
<EditType>InDialog</EditType>
<QuickChoice>true</QuickChoice>
<ChoiceMode>BothWays</ChoiceMode>
<InputByString>
<xr:Field>Catalog.ДрайверыОборудования.StandardAttribute.Description</xr:Field>
</InputByString>
<SearchStringModeOnInputByString>Begin</SearchStringModeOnInputByString>
<FullTextSearchOnInputByString>DontUse</FullTextSearchOnInputByString>
<ChoiceDataGetModeOnInputByString>Directly</ChoiceDataGetModeOnInputByString>
<DefaultObjectForm>Catalog.ДрайверыОборудования.Form.ФормаЭлемента</DefaultObjectForm>
<DefaultFolderForm/>
<DefaultListForm>Catalog.ДрайверыОборудования.Form.ФормаСписка</DefaultListForm>
<DefaultChoiceForm/>
<DefaultFolderChoiceForm/>
<AuxiliaryObjectForm/>
<AuxiliaryFolderForm/>
<AuxiliaryListForm/>
<AuxiliaryChoiceForm/>
<AuxiliaryFolderChoiceForm/>
<IncludeHelpInContents>true</IncludeHelpInContents>
<BasedOn/>
<DataLockFields/>
<DataLockControlMode>Managed</DataLockControlMode>
<FullTextSearch>Use</FullTextSearch>
<ObjectPresentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Драйвер оборудования</v8:content>
</v8:item>
</ObjectPresentation>
<ExtendedObjectPresentation/>
<ListPresentation/>
<ExtendedListPresentation/>
<Explanation/>
<CreateOnInput>DontUse</CreateOnInput>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<DataHistory>DontUse</DataHistory>
<UpdateDataHistoryImmediatelyAfterWrite>false</UpdateDataHistoryImmediatelyAfterWrite>
<ExecuteAfterWriteDataHistoryVersionProcessing>false</ExecuteAfterWriteDataHistoryVersionProcessing>
</Properties>
<ChildObjects>
<Attribute uuid="fcb34768-286f-444a-9a96-25128b07470d">
<Properties>
<Name>ТипОборудования</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Тип оборудования</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:TypeSet>cfg:DefinedType.ТипыПодключаемогоОборудования</v8:TypeSet>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Тип оборудования подключаемого драйвера.</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>true</FillFromFillingValue>
<FillValue xsi:type="xr:DesignTimeRef">Enum.ТипыПодключаемогоОборудования.EmptyRef</FillValue>
<FillChecking>ShowError</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="36c31338-088f-4efd-a8f4-629e6b29b605">
<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>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Идентификатор объекта внешней компоненты "ProgID". Строка вида "Name".</v8:content>
</v8:item>
</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"> </FillValue>
<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="76a5242c-f19a-437f-81f4-024d3b6c709f">
<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>16</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Версия драйвера подключаемого оборудования в макете</v8:content>
</v8:item>
</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="d4f77ac9-1ba2-40cf-8e2a-b6cd2a753ef0">
<Properties>
<Name>СпособПодключения</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Способ подключения</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>cfg:EnumRef.СпособПодключенияДрайвера</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>true</FillFromFillingValue>
<FillValue xsi:type="xr:DesignTimeRef">Enum.СпособПодключенияДрайвера.EnumValue.ИзМакета</FillValue>
<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="22cc42ac-80a9-4420-8f8f-9b4a887354d1">
<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>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Имя макета содержащий драйвер, поставляемый в составе конфигурации.</v8:content>
</v8:item>
</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="9323e1ef-0efd-4817-b3a1-e36af26dffe1">
<Properties>
<Name>ЛокальныйРежим</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Локальный режим</v8:content>
</v8:item>
</Synonym>
<Comment>Использование драйвера в локальном режиме</Comment>
<Type>
<v8:Type>xs:boolean</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>true</FillFromFillingValue>
<FillValue xsi:type="xs:boolean">true</FillValue>
<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="c5f0e803-c86a-497c-aee6-a4a3ee1ab326">
<Properties>
<Name>СетевойРежим</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Сетевой режим</v8:content>
</v8:item>
</Synonym>
<Comment>Использование драйвера в сетевом режиме</Comment>
<Type>
<v8:Type>xs:boolean</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>
<Attribute uuid="7521779c-5476-4e2e-8c6a-a2407b884aab">
<Properties>
<Name>СерверныйРежим</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Серверный режим</v8:content>
</v8:item>
</Synonym>
<Comment>Использование драйвера в серверном режиме</Comment>
<Type>
<v8:Type>xs:boolean</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>
<Attribute uuid="454209eb-c146-4b3e-b58c-1092cdcdc59c">
<Properties>
<Name>СнятСПоддержки</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Снят с поддержки</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Драйвер снят с поддержки, и не рекомендован к использованию</v8:content>
</v8:item>
</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>Index</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="d286de9c-2f30-4cf3-8732-c908cb5adf76">
<Properties>
<Name>БезопасноеПодключение</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Безопасное подключение</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Драйвер будет использоваться в отдельном процессе изолировано.
Для вступление в действие изменений необходимо перегрузить «1С:Предприятие». </v8:content>
</v8:item>
</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>
<Attribute uuid="f814dcf5-c4fd-4cb7-ada8-cfab4532e634">
<Properties>
<Name>РекомендуемоеИспользование</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Рекомендуемое использование</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Драйвер рекомендован к использованию как основной</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>true</FillFromFillingValue>
<FillValue xsi:type="xs:boolean">true</FillValue>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Use>ForItem</Use>
<Indexing>Index</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="1fd324a0-6c0c-4bcb-99d9-e06d0a1bfc34">
<Properties>
<Name>СообщениеПриИспользовании</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Оповещать пользователя при работе с кассовой сменой, если драйвер снят с поддержки</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Оповещать пользователя при работе с кассовой сменой, если драйвер снят с поддержки</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillFromFillingValue>true</FillFromFillingValue>
<FillValue xsi:type="xs:boolean">true</FillValue>
<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>
<Form>ФормаСписка</Form>
<Form>ФормаЭлемента</Form>
</ChildObjects>
</Catalog>
</MetaDataObject>

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<Help xmlns="http://v8.1c.ru/8.3/xcf/extrnprops" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.21">
<Page>ru</Page>
</Help>

View File

@ -0,0 +1,3 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html;charset=utf-8" http-equiv="content-type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.10570.1001"></meta></head><body>
<h1>Справочник "Драйверы оборудования".</h1>
<p class="Usual">Список драйверов оборудования поставляющихся в составе конфигурации и загружаемых пользователем в информационную базу данных. </p></body></html>

View File

@ -0,0 +1,422 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
// Определяет настройки начального заполнения элементов
//
// Параметры:
// ПолноеИмяОбъекта - Строка - имя объекта, для которого вызывается заполнение.
// Настройки - Структура:
// * ПриНачальномЗаполненииЭлемента - Булево - если Истина, то для каждого элемента будет
// вызвана процедура индивидуального заполнения ПриНачальномЗаполненииЭлемента.
// * ПредопределенныеДанные - ТаблицаЗначений - данные заполненные в процедуре ПриНачальномЗаполненииЭлементов.
//
Процедура ПриНастройкеНачальногоЗаполненияЭлементов(ПолноеИмяОбъекта, Настройки) Экспорт
Настройки.ПриНачальномЗаполненииЭлемента = Ложь;
КонецПроцедуры
// Процедура заполняет предопределенные элементы в справочнике драйверов оборудования.
//
// Параметры:
// ДрайверыОборудования - ТаблицаЗначений
//
Процедура ПриНачальномЗаполненииЭлементов(ДрайверыОборудования) Экспорт
ТекущийЯзык = ТекущийЯзык();
КодЯзыка = ?(ТипЗнч(ТекущийЯзык) = Тип("Строка"), ТекущийЯзык, ТекущийЯзык.КодЯзыка);
ТаблицаДрайверов = Новый ТаблицаЗначений();
ТаблицаДрайверов.Колонки.Добавить("Ссылка");
ТаблицаДрайверов.Колонки.Добавить("ИмяПредопределенныхДанных");
ТаблицаДрайверов.Колонки.Добавить("ВРегИмяПредопределенныхДанных");
ТаблицаДрайверов.Индексы.Добавить("ВРегИмяПредопределенныхДанных");
ТаблицаДрайверов.Колонки.Добавить("СпособПодключения");
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ДрайверыОборудования.Ссылка КАК Ссылка,
| ДрайверыОборудования.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных,
| ДрайверыОборудования.СпособПодключения КАК СпособПодключения
|ИЗ
| Справочник.ДрайверыОборудования КАК ДрайверыОборудования
|ГДЕ
| ДрайверыОборудования.ИмяПредопределенныхДанных В(&СписокИмена)";
Запрос.УстановитьПараметр("СписокИмена", ДрайверыОборудования.ВыгрузитьКолонку("ИмяДрайвера"));
РезультатЗапроса = Запрос.Выполнить();
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
НоваяСтрока = ТаблицаДрайверов.Добавить();
ЗаполнитьЗначенияСвойств(НоваяСтрока, Выборка);
НоваяСтрока.ВРегИмяПредопределенныхДанных = ВРег(НоваяСтрока.ИмяПредопределенныхДанных);
КонецЦикла;
НачатьТранзакцию();
Попытка
Блокировка = Новый БлокировкаДанных();
ЭлементБлокировки = Блокировка.Добавить("Справочник.ДрайверыОборудования");
ЭлементБлокировки.ИсточникДанных = ТаблицаДрайверов;
ЭлементБлокировки.ИспользоватьИзИсточникаДанных("Ссылка", "Ссылка");
Блокировка.Заблокировать();
Для Каждого ДрайверОборудования Из ДрайверыОборудования Цикл
ПараметрыДрайвера = МенеджерОборудованияКлиентСервер.ПараметрыСозданияНовогоДрайвера();
ЗаполнитьЗначенияСвойств(ПараметрыДрайвера, ДрайверОборудования);
ПараметрыДрайвера.Предопределенный = Истина;
Если ТипЗнч(ПараметрыДрайвера.ТипОборудования) = Тип("Строка") Тогда
ПараметрыДрайвера.ТипОборудования = МенеджерОборудования.ТипОборудованияПоСтроке(ПараметрыДрайвера.ТипОборудования);
КонецЕсли;
СтрокаТаблицы = ТаблицаДрайверов.Найти(ВРег(ПараметрыДрайвера.ИмяДрайвера),"ВРегИмяПредопределенныхДанных");
Если СтрокаТаблицы <> Неопределено Тогда
Драйвер = СтрокаТаблицы.Ссылка.ПолучитьОбъект();
ПараметрыДрайвера.СпособПодключения = СтрокаТаблицы.СпособПодключения;
МакетДоступен = Ложь;
ИмяМакетаДрайвера = ПараметрыДрайвера.ИмяМакетаДрайвера;
МенеджерОборудования.ЗаполнитьДанныеМакетов(ПараметрыДрайвера.ИмяДрайвера, ИмяМакетаДрайвера, МакетДоступен, Неопределено, КодЯзыка);
Если Не МакетДоступен Тогда
ПараметрыДрайвера.СпособПодключения = Перечисления.СпособПодключенияДрайвера.ИзИнформационнойБазы;
КонецЕсли;
Иначе
Драйвер = Справочники.ДрайверыОборудования.СоздатьЭлемент();
Драйвер.ИмяПредопределенныхДанных = ПараметрыДрайвера.ИмяДрайвера;
МакетДоступен = Ложь;
ИмяМакетаДрайвера = ПараметрыДрайвера.ИмяМакетаДрайвера;
МенеджерОборудования.ЗаполнитьДанныеМакетов(ПараметрыДрайвера.ИмяДрайвера, ИмяМакетаДрайвера, МакетДоступен, Неопределено, КодЯзыка);
Если НЕ ЗначениеЗаполнено(ПараметрыДрайвера.СпособПодключения) Тогда
Если МакетДоступен Тогда
ПараметрыДрайвера.СпособПодключения = Перечисления.СпособПодключенияДрайвера.ИзМакета;
Иначе
ПараметрыДрайвера.СпособПодключения = Перечисления.СпособПодключенияДрайвера.ИзИнформационнойБазы;
КонецЕсли;
КонецЕсли;
КонецЕсли;
Если (Драйвер.Наименование <> ПараметрыДрайвера.Наименование)
Или (Драйвер.ИдентификаторОбъекта <> Строка(ПараметрыДрайвера.ИдентификаторОбъекта))
Или (Драйвер.ВерсияДрайвера <> Строка(ПараметрыДрайвера.ВерсияДрайвера))
Или (Драйвер.ИмяМакетаДрайвера <> Строка(ПараметрыДрайвера.ИмяМакетаДрайвера))
Или (Драйвер.ТипОборудования <> ПараметрыДрайвера.ТипОборудования)
Или (Драйвер.СпособПодключения <> ПараметрыДрайвера.СпособПодключения)
Или (Драйвер.СнятСПоддержки <> ПараметрыДрайвера.СнятСПоддержки)
Или (Драйвер.БезопасноеПодключение <> ПараметрыДрайвера.БезопасноеПодключение)
Или (Драйвер.РекомендуемоеИспользование <> ПараметрыДрайвера.РекомендуемоеИспользование) Тогда
Драйвер.Наименование = ПараметрыДрайвера.Наименование;
Драйвер.ИдентификаторОбъекта = ПараметрыДрайвера.ИдентификаторОбъекта;
Драйвер.ВерсияДрайвера = ПараметрыДрайвера.ВерсияДрайвера;
Драйвер.ИмяМакетаДрайвера = ПараметрыДрайвера.ИмяМакетаДрайвера;
Драйвер.ТипОборудования = ПараметрыДрайвера.ТипОборудования;
Драйвер.СпособПодключения = ПараметрыДрайвера.СпособПодключения;
Драйвер.СнятСПоддержки = ПараметрыДрайвера.СнятСПоддержки;
Драйвер.БезопасноеПодключение = ПараметрыДрайвера.БезопасноеПодключение;
Драйвер.РекомендуемоеИспользование = ПараметрыДрайвера.РекомендуемоеИспользование;
Если Драйвер.СнятСПоддержки Тогда
Драйвер.СообщениеПриИспользовании = Истина;
КонецЕсли;
Драйвер.Записать();
КонецЕсли;
КонецЦикла;
ЗафиксироватьТранзакцию();
Исключение
ОтменитьТранзакцию();
ОбщегоНазначенияБПО.ЗаписатьОшибкуВЖурналРегистрации(
НСтр("ru = 'Заполнение предопределенных элементов драйвера'", ОбщегоНазначенияБПО.КодОсновногоЯзыка()));
КонецПопытки;
КонецПроцедуры
// Процедура заполняет элемент в справочнике драйверов оборудования.
//
// Параметры:
// ПараметрыСоздания - Структура - параметры создания оборудования.
//
// Возвращаемое значение:
// СправочникСсылка.ДрайверыОборудования -
//
Функция СоздатьНовыйЭлемент(ПараметрыСоздания) Экспорт
НовыйЭлемент = Справочники.ДрайверыОборудования.СоздатьЭлемент();
Если ТипЗнч(ПараметрыСоздания.ТипОборудования) = Тип("Строка") Тогда
ПараметрыСоздания.ТипОборудования = МенеджерОборудования.ТипОборудованияПоСтроке(ПараметрыСоздания.ТипОборудования);
КонецЕсли;
НовыйЭлемент.ТипОборудования = ПараметрыСоздания.ТипОборудования;
НовыйЭлемент.ИдентификаторОбъекта = ПараметрыСоздания.ИдентификаторОбъекта;
НовыйЭлемент.Наименование = ПараметрыСоздания.Наименование;
НовыйЭлемент.ИмяМакетаДрайвера = ПараметрыСоздания.ИмяМакетаДрайвера;
НовыйЭлемент.ВерсияДрайвера = ПараметрыСоздания.ВерсияДрайвера;
НовыйЭлемент.СнятСПоддержки = ПараметрыСоздания.СнятСПоддержки;
НовыйЭлемент.СпособПодключения = ПараметрыСоздания.СпособПодключения;
НовыйЭлемент.БезопасноеПодключение = ПараметрыСоздания.БезопасноеПодключение;
Если ПараметрыСоздания.Предопределенный Тогда
НовыйЭлемент.ИмяПредопределенныхДанных = ПараметрыСоздания.ИмяДрайвера;
КонецЕсли;
НовыйЭлемент.Записать();
Возврат НовыйЭлемент.Ссылка;
КонецФункции
// Получает ссылку предопределенного элемента по его полному имени.
//
// Параметры:
// ПолноеИмяПредопределенного - Строка - имя предопределенного элемента.
//
// Возвращаемое значение:
// СправочникСсылка.ПодключаемоеОборудование,
// Неопределено.
//
Функция ПредопределенныйЭлемент(Знач ПолноеИмяПредопределенного) Экспорт
ИмяПредопределенного = ВРег(ПолноеИмяПредопределенного);
Точка = Найти(ИмяПредопределенного, ".");
ИмяКоллекции = Лев(ИмяПредопределенного, Точка - 1);
ИмяПредопределенного = Сред(ИмяПредопределенного, Точка + 1);
Точка = Найти(ИмяПредопределенного, ".");
ИмяТаблицы = Лев(ИмяПредопределенного, Точка - 1);
ИмяПредопределенного = Сред(ИмяПредопределенного, Точка + 1);
ТекстЗапроса = "ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1 Ссылка ИЗ &ПолноеИмяТаблицы ГДЕ ИмяПредопределенныхДанных = &ИмяПредопределенного";
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПолноеИмяТаблицы", ИмяКоллекции + "." + ИмяТаблицы);
Запрос = Новый Запрос(ТекстЗапроса);
Запрос.УстановитьПараметр("ИмяПредопределенного", ИмяПредопределенного);
Результат = Запрос.Выполнить();
Если Результат.Пустой() Тогда
Возврат Неопределено;
Иначе
Возврат Результат.Выгрузить()[0].Ссылка;
КонецЕсли;
КонецФункции
// Функция возвращает структуру с данными драйвера оборудования
// (со значениями реквизитов элемента справочника).
//
// Параметры:
// ИдентификаторДрайвера - СправочникСсылка.ДрайверыОборудования - идентификатор драйвера.
//
// Возвращаемое значение:
// Структура.
//
Функция ДанныеДрайвераОборудования(ИдентификаторДрайвера) Экспорт
ТекущийЯзык = ТекущийЯзык();
КодЯзыка = ?(ТипЗнч(ТекущийЯзык) = Тип("Строка"), ТекущийЯзык, ТекущийЯзык.КодЯзыка);
ДанныеДрайвера = Новый Структура();
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ДрайверыОборудованияПереопределяемый.Ссылка КАК Ссылка,
| ДрайверыОборудованияПереопределяемый.Наименование КАК Наименование,
| ДрайверыОборудованияПереопределяемый.ИдентификаторОбъекта КАК ИдентификаторОбъекта,
| ДрайверыОборудованияПереопределяемый.ВерсияДрайвера КАК ВерсияДрайвера,
| ДрайверыОборудованияПереопределяемый.ИмяМакетаДрайвера КАК ИмяМакетаДрайвера,
| ДрайверыОборудованияПереопределяемый.СнятСПоддержки КАК СнятСПоддержки,
| ДрайверыОборудованияПереопределяемый.СообщениеПриИспользовании КАК СообщениеПриИспользовании,
| ДрайверыОборудованияПереопределяемый.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных,
| ДрайверыОборудованияПереопределяемый.ТипОборудования КАК ТипОборудования,
| ДрайверыОборудованияПереопределяемый.Предопределенный КАК Предопределенный,
| ДрайверыОборудованияПереопределяемый.СпособПодключения КАК СпособПодключения,
| ДрайверыОборудованияПереопределяемый.БезопасноеПодключение КАК БезопасноеПодключение
|ИЗ
| Справочник.ДрайверыОборудования КАК ДрайверыОборудованияПереопределяемый
|ГДЕ
| ДрайверыОборудованияПереопределяемый.Ссылка = &Идентификатор";
Запрос.УстановитьПараметр("Идентификатор", ИдентификаторДрайвера);
РезультатЗапроса = Запрос.Выполнить();
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
// Заполним структуру данных устройства.
ДанныеДрайвера.Вставить("Ссылка" , Выборка.Ссылка);
ДанныеДрайвера.Вставить("Наименование" , Выборка.Наименование);
ДанныеДрайвера.Вставить("ИдентификаторОбъекта" , Выборка.ИдентификаторОбъекта);
ДанныеДрайвера.Вставить("ВерсияДрайвера" , Выборка.ВерсияДрайвера);
ДанныеДрайвера.Вставить("СнятСПоддержки" , Выборка.СнятСПоддержки);
ДанныеДрайвера.Вставить("СообщениеПриИспользовании", Выборка.СообщениеПриИспользовании);
ДанныеДрайвера.Вставить("ИмяПредопределенныхДанных", Выборка.ИмяПредопределенныхДанных);
ДанныеДрайвера.Вставить("ТипыОборудования" , МенеджерОборудования.ПараметрыТипыОборудования(Выборка.ТипОборудования));
ДанныеДрайвера.Вставить("ТипОборудования" , Выборка.ТипОборудования);
ДанныеДрайвера.Вставить("ТипОборудованияИмя" , XMLСтрока(Выборка.ТипОборудования));
ДанныеДрайвера.Вставить("БезопасноеПодключение" , Выборка.БезопасноеПодключение);
СпособПодключения = Выборка.СпособПодключения;
ПодключениеИзМакета = СпособПодключения = Перечисления.СпособПодключенияДрайвера.ИзМакета;
ПодключениеЛокальноПоИдентификатору = СпособПодключения = Перечисления.СпособПодключенияДрайвера.ЛокальноПоИдентификатору;
ШаблонЛокализации = Неопределено;
МакетДоступен = Ложь;
ИмяДрайвера = Выборка.ИмяПредопределенныхДанных;
ИмяМакетаДрайвера = Выборка.ИмяМакетаДрайвера;
Если Не ПустаяСтрока(ИмяДрайвера) Тогда
МенеджерОборудования.ЗаполнитьДанныеМакетов(ИмяДрайвера, ИмяМакетаДрайвера, МакетДоступен, ШаблонЛокализации, КодЯзыка);
КонецЕсли;
ДанныеДрайвера.Вставить("СпособПодключения" , СпособПодключения);
ДанныеДрайвера.Вставить("ПодключениеИзМакета" , ПодключениеИзМакета);
ДанныеДрайвера.Вставить("ПодключениеЛокальноПоИдентификатору", ПодключениеЛокальноПоИдентификатору);
ДанныеДрайвера.Вставить("ИмяМакетаДрайвера" , ИмяМакетаДрайвера);
ДанныеДрайвера.Вставить("МакетДоступен" , МакетДоступен);
ДанныеДрайвера.Вставить("ШаблонЛокализации" , ШаблонЛокализации);
ТипыОборудования = МенеджерОборудования.ДоступныеТипыНесертифицированногоОборудования();
Если ТипыОборудования.Найти(Выборка.ТипОборудования) = Неопределено Тогда
Несертифицированное = Ложь;
Иначе
Несертифицированное = Истина;
КонецЕсли;
ДанныеДрайвера.Вставить("Несертифицированное" , Несертифицированное);
КонецЦикла;
Возврат ДанныеДрайвера;
КонецФункции
// Функция возвращает драйверы по типу оборудования
//
// Параметры:
// ТипОборудования - ПеречислениеСсылка.ТипыПодключаемогоОборудования - типы подключаемого оборудования.
// ТолькоДоступные - Булево - признак только доступных драйверов.
// СнятыеСПоддержкиДрайвера - Булево - признак отображения снятых с поддержки драйверов.
// ТолькоРекомендуемоеИспользование - Булево - признак отображения только рекомендуемых к использованию драйверов.
//
// Возвращаемое значение:
// Массив Из СправочникСсылка.ДрайверыОборудования
//
Функция ДрайверыПоТипуОборудования(ТипОборудования, ТолькоДоступные = Истина, СнятыеСПоддержкиДрайвера = Ложь, РекомендуемоеИспользование = Истина) Экспорт
СписокДрайверов = Новый СписокЗначений();
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ДрайверыОборудованияПереопределяемый.Ссылка КАК Ссылка,
| ДрайверыОборудованияПереопределяемый.Наименование КАК Наименование,
| ДрайверыОборудованияПереопределяемый.ТипОборудования КАК ТипОборудования,
| ДрайверыОборудованияПереопределяемый.Предопределенный КАК Предопределенный
|ИЗ
| Справочник.ДрайверыОборудования КАК ДрайверыОборудованияПереопределяемый
|ГДЕ
| ДрайверыОборудованияПереопределяемый.ТипОборудования = &ТипОборудования
| И (НЕ &ТолькоДоступные
| ИЛИ НЕ ДрайверыОборудованияПереопределяемый.ПометкаУдаления)
| И (&СнятыеСПоддержки
| ИЛИ НЕ ДрайверыОборудованияПереопределяемый.СнятСПоддержки)
| И (НЕ &РекомендуемоеИспользование
| ИЛИ ДрайверыОборудованияПереопределяемый.РекомендуемоеИспользование)
|
|УПОРЯДОЧИТЬ ПО
| ДрайверыОборудованияПереопределяемый.Наименование";
Запрос.УстановитьПараметр("ТолькоДоступные" , ТолькоДоступные);
Запрос.УстановитьПараметр("СнятыеСПоддержки", СнятыеСПоддержкиДрайвера);
Запрос.УстановитьПараметр("РекомендуемоеИспользование", РекомендуемоеИспользование);
Запрос.УстановитьПараметр("ТипОборудования" , ТипОборудования);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
СписокДрайверов.Добавить(ВыборкаДетальныеЗаписи.Ссылка, ВыборкаДетальныеЗаписи.Наименование);
КонецЦикла;
Возврат СписокДрайверов;
КонецФункции
// СтандартныеПодсистемы.УправлениеДоступом
// См. УправлениеДоступомПереопределяемый.ПриЗаполненииСписковСОграничениемДоступа.
//
// Параметры:
// Ограничение - Структура:
// * Текст - Строка - ограничение доступа для пользователей.
// Если пустая строка, значит, доступ разрешен.
// * ТекстДляВнешнихПользователей - Строка - ограничение доступа для внешних пользователей.
// Если пустая строка, значит, доступ запрещен.
// * ПоВладельцуБезЗаписиКлючейДоступа - Неопределено - определить автоматически.
// - Булево - если Ложь, то всегда записывать ключи доступа,
// если Истина, тогда не записывать ключи доступа,
// а использовать ключи доступа владельца (требуется,
// чтобы ограничение было строго по объекту-владельцу).
// * ПоВладельцуБезЗаписиКлючейДоступаДляВнешнихПользователей - Неопределено, Булево - также
// как у параметра ПоВладельцуБезЗаписиКлючейДоступа.
//
Процедура ПриЗаполненииОграниченияДоступа(Ограничение) Экспорт
Менеджер = "Справочник.ДрайверыОборудования";
МенеджерОборудованияВызовСервераПереопределяемый.ПриЗаполненииОграниченияДоступа(Менеджер, Ограничение);
КонецПроцедуры
// Конец СтандартныеПодсистемы.УправлениеДоступом
#КонецОбласти
#Область СлужебныйПрограммныйИнтерфейс
// Возвращает массив идентификаторов всех драйверов Библиотеки
//
// Возвращаемое значение:
// Массив из Строка - массив содержащий идентификаторы драйверов
Функция ИдентификаторыДрайверов() Экспорт
УстановитьПривилегированныйРежим(Истина);
Идентификаторы = Новый Массив();
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ДрайверыОборудования.ИдентификаторОбъекта КАК Идентификатор
|ИЗ
| Справочник.ДрайверыОборудования КАК ДрайверыОборудования
|ГДЕ
| ДрайверыОборудования.Предопределенный
| И НЕ ДрайверыОборудования.СнятСПоддержки";
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Идентификаторы.Добавить(Выборка.Идентификатор);
КонецЦикла;
МенеджерОборудованияВызовСервераПереопределяемый.ПриПолученииИдентификаторовДрайверов(Идентификаторы);
Возврат Идентификаторы;
КонецФункции
Процедура ЗарегистрироватьНесертифицированныеДрайверы(ДрайверыОборудования) Экспорт
КонецПроцедуры
#КонецОбласти
#КонецЕсли

View File

@ -0,0 +1,981 @@
<?xml version="1.0" encoding="UTF-8"?>
<PredefinedData xmlns="http://v8.1c.ru/8.3/xcf/predef" xmlns:v8="http://v8.1c.ru/8.1/data/core" 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" xsi:type="CatalogPredefinedItems" version="2.21">
<Item id="7afdd7d3-8989-4561-b0d7-d639873077c5">
<Name>Драйвер1СРарусДисплеиПокупателя</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С-Рарус:Дисплеи покупателя</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="6866f6eb-5e10-4c68-a0da-b3fb9f15d3f1">
<Name>Драйвер1СРарусФискальныеРегистраторыМебиус</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С-Рарус:Фискальные регистраторы Мебиус</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="2572bcb8-3ac4-4ced-8a09-d5617ae06e00">
<Name>Драйвер1СРарусФискальныеРегистраторыФеликс</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С-Рарус:Фискальные регистраторы Феликс</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="caf43bd7-ad57-4b98-92a1-a57e3182951f">
<Name>Драйвер1СWebСервисОборудование</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С:Web-сервис оборудование</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="353a51d8-c283-44cc-9e4e-05dc20ebf817">
<Name>Драйвер1СДисплейПокупателя</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С:Дисплей покупателя</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="7c6b1e82-3c31-47ce-8eac-7d4df39cc938">
<Name>Драйвер1СККМED</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С:ККМ ED</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="e1d19809-89bb-433e-9d02-f1d256516710">
<Name>Драйвер1СККМOffline</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С:Офлайн-оборудование</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="359d6127-2033-420d-8827-a73298a66100">
<Name>Драйвер1СПринтерЧеков</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С:Принтер чеков</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="3ed25985-ea6e-45f8-9ca8-ed3c30face07">
<Name>Драйвер1ССканерыШтрихкода</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С:Сканеры штрихкода (COM)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="4eca0a6e-8e58-45fa-ae38-344ee76401bb">
<Name>Драйвер1ССканерыШтрихкодаNative</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С:Сканеры штрихкода (NativeApi)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="9a0eb32a-0c8b-497f-b9eb-5df7138961af">
<Name>Драйвер1ССчитывателиМагнитныхКарт</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С:Считыватели магнитных карт</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="c7899b30-c93a-4014-b5f8-ec6467690905">
<Name>Драйвер1ССчитывателиМагнитныхКартNative</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С:Считыватели магнитных карт (NativeApi)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="d30c1fe3-8271-47c6-aa28-8b5047b4a8dc">
<Name>Драйвер1СФискальныйРегистраторЭмулятор</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С:Фискальный регистратор (эмулятор)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="1d478c45-1ea2-4de3-8544-7a76806e2d26">
<Name>Драйвер1СЭвоторККМOffline</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С:Эвотор</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="496abffa-427f-4b4c-af91-ab2fb621801c">
<Name>Драйвер1СЭквайринговыеТерминалыСбербанк</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С:Эквайринговые терминалы Сбербанк</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="a17a1c96-bcc7-4648-9c56-0e4ea81a7ed8">
<Name>Драйвер1СЭквайринговыеТерминалыСбербанк2х</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С:Эквайринговые терминалы Сбербанк 2.Х</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="7a5feb29-0fc6-4b20-93fc-bf7d51f8b8e7">
<Name>Драйвер1СЭлектронныеВесы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>1С:Электронные весы (NativeApi)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="eab8bc20-0e90-4317-a9e8-b2e3742327a4">
<Name>ДрайверACOMВесыСПечатьюЭтикеток</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ACOM:Весы с печатью этикеток</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="5e16e186-b343-43ea-82b9-403ab8b865fa">
<Name>ДрайверARCUS2ЭквайринговыеТерминалыIngenico</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ARCUS2:Эквайринговые терминалы Ingenico</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="c376ae37-8e60-436d-a429-539642ddf143">
<Name>ДрайверARSККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ars:ККТ с передачей данных в ОФД (54-ФЗ)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="c9af7655-a1b3-42b7-b4b7-16f018b4bd9e">
<Name>ДрайверBizerbaВесыСПечатьюЭтикеток</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Bizerba:Весы с печатью этикеток</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="7fe7776d-79ef-4f32-81a0-5dea76f50673">
<Name>ДрайверCASВесыСПечатьюЭтикеток</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>CAS:Весы с печатью этикеток</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="8d805e3f-145c-49f5-b7a4-1f20facf3346">
<Name>ДрайверCASВесыСПечатьюЭтикеток2х</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>CAS:Весы с печатью этикеток 2.х</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="5a428475-0087-467b-b0e6-612a70a83f65">
<Name>ДрайверCASЭлектронныеВесы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>CAS:Электронные весы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="c25fee06-1c2b-46f2-9ed3-832706251333">
<Name>ДрайверCASЭлектронныеВесы2х</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>CAS:Электронные весы 2.х</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="bc986661-4245-4889-b521-62a34944da3b">
<Name>ДрайверКлеверенсСканерШтрихкода</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>CLEVERENCE:Драйвер ТСД для мобильной платформы 1С</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="df2d0be7-3337-4e84-a1bd-b4cd10dd6ee8">
<Name>ДрайверКлеверенсТерминалыСбораДанных</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>CLEVERENCE:Терминалы сбора данных</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="a84c59ce-c2a6-412b-9992-e693f21a27a1">
<Name>ДрайверERFIDСчитывательRFID</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ERFID:Считыватель RFID</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="d2d3bdf8-3507-43bf-8a9c-cd6db7e85079">
<Name>ДрайверFITККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>FIT:ККТ с передачей данных в ОФД (54-ФЗ)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="45eab005-928b-4e1b-b95e-41afebc6ef42">
<Name>ДрайверIboxProПоддержкаMPosЭквайринга</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>iboxPro:Поддержка mPos эквайринга</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="497ebae6-5861-40f6-bf22-6ae9027d946f">
<Name>ДрайверIngenicoЭквайринговыеТерминалыARCUS</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Ingenico:Драйвер эквайринговой системы ARCUS 2.1</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="83c08b40-1a4b-4e92-bee2-4af03b22a201">
<Name>ДрайверINVERSUMЭквайринговыеТерминалы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>INVERSUM:Эквайринговые терминалы (ФЗ-491)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="fbba93bc-d31c-4ed0-b26a-d8929dd5fb4f">
<Name>ДрайверIronLogicСчитывателиБесконтактныхКарт</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>IronLogic:Считыватели бесконтактных карт Z-2</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="14611f43-e542-49f4-ab23-84c00dc2ff52">
<Name>ДрайверISBCСчитывательRFID</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ISBC:Считыватель RFID</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="fba1c1d1-7cda-4db0-b24e-6e3c32329615">
<Name>ДрайверMERTECHСканерШтрихкода</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>MERTECH:Сканер штрихкода ТСД</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="49048e4b-aec4-46cd-b971-c03981d09e9a">
<Name>ДрайверMitsu54ФЗ4ФФД12</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Mitsu:ККТ с передачей данных в ОФД (ФФД 1.2) УСН НДС</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="e50dcea0-d4f8-4b62-b01e-f4506aa8174d">
<Name>ДрайверMPos2canЭквайринг</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>mPos2can:Поддержка 2can эквайринга</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="d325bbd5-64bc-452e-b98c-671a85ee8c28">
<Name>ДрайверMSTARККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>MSTAR:ККТ с передачей данных в ОФД (ФФД 1.2)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="a0b7e630-93bc-4b9e-977b-d78b4a5b9f33">
<Name>ДрайверNEWTONККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>NEWTON:ККТ с передачей данных в ОФД (54-ФЗ)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="21414bb2-af88-461a-b37f-f8e6e61cca9e">
<Name>ДрайверПОСЦентрЭлектронныеВесыNG</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>POScenter:Электронные весы SLIM NG</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="e6c5c0c2-b78e-4af9-90e4-16186f2ca4b6">
<Name>ДрайверPOSUAДисплеиПокупателя</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>POSUA: Дисплеи покупателя</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="8cd86271-2132-42ce-92bf-efb169101324">
<Name>ДрайверRightScanККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>RightScan:ККТ с передачей данных в ОФД (54-ФЗ)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="17e39f55-3aeb-4c7e-8d4c-fa9b08af5c4d">
<Name>ДрайверRightScanТерминалыСбораДанных</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>RightScan:Терминалы сбора данных (ПО RS:Mobile ACS)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="560fc095-5d16-425c-b5e8-129f2f75c10a">
<Name>ДрайверRightScanУстройстваВвода</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>RightScan:Устройства ввода данных ТСД Urovo</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="ab4f6678-2404-4046-88bc-f2c72ab5e47c">
<Name>ДрайверRightScanУстройствоПечати</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>RightScan:Устройство печати ТСД Urovo</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="16e19547-9f76-460e-9145-2e29ec2988ae">
<Name>ДрайверScanPortУстройстваВвода</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ScanPort:Устройства ввода данных</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="964a16ab-0a69-4341-bd4a-a0509e73bc9b">
<Name>ДрайверSKAM1CЭквайринговыеСистемы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>SKAM-1C:Эквайринговые системы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="2270906f-5ade-4f69-8070-e54ff591626c">
<Name>ДрайверSKAMUNIPOSЭквайринговыеСистемы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>SKAM-UNIPOS:Эквайринговое решение СофтКейс</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="01bfc15c-8d28-4b3e-95ef-52f2c22b5c00">
<Name>ДрайверSkyPOSЭквайринговыеТерминалы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>SkyPOS:Эквайринговые терминалы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="2d66d929-47ec-4669-8b8a-29a78c92a334">
<Name>ДрайверTACTILIONЭквайринговыеТерминалы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>TACTILION:Эквайринговые терминалы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="b4ea214d-a176-47d7-81bb-dcdd390486be">
<Name>ДрайверTRPOSЭквайринговыеТерминалы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>TRPOS:Эквайринговые терминалы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="004401b9-e91c-441f-8320-031336019f1c">
<Name>ДрайверUCSEFTPOSЭквайринговыеТерминалы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>UCS-AT:Эквайринговые терминалы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="29ea57ae-5aa0-4caf-9100-388d1a07628c">
<Name>ДрайверWNJIККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>WNJI:ККТ с передачей данных в ОФД (54-ФЗ)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="83519d83-452b-4a15-858c-d69a050c48c9">
<Name>ДрайверАЗУРККТ54ФЗФФД12</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АЗУР:ККТ с передачей данных в ОФД (ФФД 1.2)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="b6ace2a7-a8fb-4fc7-8738-cb90e42bcbb2">
<Name>ДрайверАЗУРПлатежнаяСистема</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АЗУР:Платежная система</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="dcdab4e2-1310-4c23-aab9-42b0e39b04e4">
<Name>ДрайверАТОЛВесыСПечатьюЭтикеток8X</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Весы c печатью этикеток 8.X</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="d5392e5b-70b6-40f8-968d-e5fa749c8592">
<Name>ДрайверАтолДисплеиПокупателя</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Дисплеи покупателя</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="bee51ae4-734e-41b6-9e3c-b0572993565b">
<Name>ДрайверАтолДисплеиПокупателя8X</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Дисплеи покупателя 8.X</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="48581f70-17c8-4f90-bb6d-314d0d62d1c4">
<Name>ДрайверАТОЛДрайверПлатежногоЯдраПэй</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Драйвер платежного ядра АТОЛ Пэй</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="dcee4ba1-1f9a-4102-8a21-3e8d8df8672c">
<Name>ДрайверАтолККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:ККТ с передачей данных в ОФД (54-ФЗ)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="a726b8a9-63bd-4db0-a6a2-b6fc68bafad5">
<Name>ДрайверАтолККТ54ФЗ10X</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:ККТ с передачей данных в ОФД (54-ФЗ) 10.x</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="9ad973fe-4af3-44ac-8029-20c9ff57e301">
<Name>ДрайверАтолККТ54ФЗ9X</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:ККТ с передачей данных в ОФД (54-ФЗ) 9.x</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="6c1a3b02-3e48-4501-9f85-d7b6aea4b9c8">
<Name>ДрайверАТОЛККТ54ФЗ10XФФД12X</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:ККТ с передачей данных в ОФД 10.x (ФФД 1.2) УСН НДС</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="ee164eba-953e-4a87-ad58-ff0993ac2295">
<Name>ДрайверАТОЛККТ54ФЗ10XФФД12</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:ККТ с передачей данных в ОФД 10.Х (ФФД 1.2)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="2358cae2-8534-495a-a1ab-8ffb571991a6">
<Name>ДрайверАтолПринтераЭтикеток</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Принтера этикеток</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="b2977f19-14cc-489c-b5f0-e7d597bf9c97">
<Name>ДрайверАтолККМOffline</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Рабочее место кассира</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="455d306d-5653-495b-ba22-5683b1d854e6">
<Name>ДрайверАтолСканерыШтрихкода</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Сканеры штрихкода</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="57d20756-a62f-4ba4-9541-724f9e916033">
<Name>ДрайверАтолСканерыШтрихкода8X</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Сканеры штрихкода 8.X</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="b40ca7ff-cef0-4c62-9d78-d414800d4b7f">
<Name>ДрайверАтолСчитывателиМагнитныхКарт</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Считыватели магнитных карт</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="339883e0-8107-43ac-a1b1-5ea01ef5e5cd">
<Name>ДрайверАтолСчитывателиМагнитныхКарт8X</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Считыватели магнитных карт 8.X</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="25483988-7238-4a66-bd73-d35bda09fe0f">
<Name>ДрайверАтолТерминалыСбораДанных</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Терминалы сбора данных</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="1d38b07e-1f02-40ef-95d3-ed9ea238af3c">
<Name>ДрайверАтолТерминалыСбораДанныхMobileLogistics</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Терминалы сбора данных MobileLogistics 8.Х</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="cec88c20-25a0-4bfd-9ae5-e86c62ab965e">
<Name>ДрайверАТОЛСканерШтрихкода</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Устройства ввода данных ТСД</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="fdd3147a-4aa3-4363-ad8d-15cb3ef13fbe">
<Name>ДрайверАтолФискальныеРегистраторыУниверсальный</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Фискальные регистраторы (Универсальный)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="401de5c0-a7aa-4041-97c3-acefe929a760">
<Name>ДрайверАтолФискальныеРегистраторы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Фискальные регистраторы 6.Х</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="675bbc1b-e10f-4232-9ca6-0e28fadd6a12">
<Name>ДрайверАтолФискальныеРегистраторы8X</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Фискальные регистраторы 8.Х</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="c56a37bc-5d15-4852-b2ba-fa8a26fb7fb3">
<Name>ДрайверАтолЭлектронныеВесы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Электронные весы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="308e678e-8bc0-44ad-b92c-34d85bfebfdf">
<Name>ДрайверАтолЭлектронныеВесы8X</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>АТОЛ:Электронные весы 8.Х</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="ab51c04a-764c-4c1a-a2ed-a8ba24316aac">
<Name>ДрайверВерсияТK1Ф54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Версия-Т:ККТ с передачей данных в ОФД (54-ФЗ)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="ecbc8a10-bf16-4f3c-98ae-f5a3bd2b7de9">
<Name>ДрайверВерсияТККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Версия-Т:ККТ с передачей данных в ОФД (54-ФЗ)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="27bbb6fd-6f61-4cbb-bce5-65b4ea92943b">
<Name>ДрайверВерсияТФискальныеРегистраторы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Версия-Т:Фискальные регистратоы КАСБИ</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="ec6f5b26-8f8c-4d44-af4d-855103e7d095">
<Name>ДрайверГАЗПРОМБАНКЭквайринговыеТерминалы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ГАЗПРОМБАНК:Эквайринговые терминалы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="fc6e00fb-e9cf-47f2-a36e-bc5590f7555d">
<Name>ДрайверГексагонПринтераЭтикеток</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Гексагон:Принтера этикеток Zebra,Proton,Toshiba-TEC,Datamax-O neil</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="195e0f6c-1100-4275-8e07-146a2c7e22fd">
<Name>ДрайверГексагонСканерыШтрихкода</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Гексагон:Сканеры штрихкода Proton</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="d9fb4749-08ea-4c0f-aed7-cd97d0a7aa19">
<Name>ДрайверГексагонТерминалыСбораДанных</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Гексагон:Терминалы сбора данных Goods</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="d0f633bf-dcc9-4f21-89ab-618d528faacf">
<Name>ДрайверДримкасККТ54ФЗ44</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Дримкас:ККТ с передачей данных в ОФД (ФФД 1.2) УСН НДС</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="078f45d3-56b2-4aea-8b31-a7c78d225313">
<Name>ДрайверДримкасККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Дримкас:ККТ с передачей данных в ОФД Вики Принт (ФФД 1.2)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="9c49f073-7341-4dca-b165-82a1e6a71cff">
<Name>ДрайверДримкасФискальныеРегистраторыVikiPrint</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Дримкас:Фискальные регистраторы VikiPrint</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="b1332095-a6c5-46ef-87f0-67638836eef7">
<Name>ДрайверИнитпроККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Инитпро:ККТ с передачей данных в ОФД (54-ФЗ)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="4d83c758-29d4-4645-89d4-6d72503b3523">
<Name>ДрайверИнитпроККТ54ФЗФФД12</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Инитпро:ККТ с передачей данных в ОФД (ФФД 1.2)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="676e7f99-9801-4ad4-b8a2-006091dbe326">
<Name>ДрайверИнкотексККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Инкотекс:ККТ с передачей данных в ОФД (54-ФЗ)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="bda90f6f-a36f-4fe0-b448-b6c2c66d6f41">
<Name>ДрайверИнкотексККТ54ФЗФФ12</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Инкотекс:ККТ с передачей данных в ОФД (ФФД 1.2) УСН НДС</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="3bf70e4f-4d17-4d81-9ba4-13a8f5ef1e2c">
<Name>ДрайверИНПАСЭквайринговыеТерминалыSmart</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ИНПАС:Эквайринговые терминалы Smart</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="b2b7f9a6-107a-41cc-b78d-3be0daf2bd49">
<Name>ДрайверИНПАСЭквайринговыеТерминалыUNIPOS</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ИНПАС:Эквайринговые терминалы UNIPOS</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="ca51a1cb-d683-4bc5-a59a-6a7c25309c7e">
<Name>ДрайверИНПАСЭквайринговыеТерминалыНСПК</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ИНПАС:Эквайринговые терминалы UNIPOS (ФЗ-491)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="8b430792-557a-461e-a15e-03ef3a303662">
<Name>ДрайверИскраККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ИСКРА:ККТ с передачей данных в ОФД (ФФД 1.2)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="42d90ce5-2208-4308-b574-91b4e3320165">
<Name>ДрайверИскраФискальныеРегистраторыПрим</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ИСКРА:Фискальные регистраторы Прим</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="1f4a025b-1f74-4398-b8d9-5b22c74dad61">
<Name>ДрайверКАСТОМФ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>КАСТОМ:ККТ с передачей данных в ОФД (54-ФЗ)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="16a13f5c-9c24-4323-befd-be711eaa3de8">
<Name>ДрайверККСДисплеиПокупателя</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ККС:Дисплеи покупателя</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="8d6182d4-d5a8-4669-8da9-a72cc1e07038">
<Name>ДрайверККСККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ККС:ККТ с передачей данных в ОФД (54-ФЗ)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="807f9c91-ed1c-4ff0-9c55-1802c2c56851">
<Name>ДрайверККСККТ54ФЗ2Х</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ККС:ККТ с передачей данных в ОФД (ФФД 1.2) УСН НДС</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="0074399f-d97a-4b2b-ad41-7ebe4af34c5b">
<Name>ДрайверККСФискальныеРегистраторы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ККС:Фискальные регистраторы Спарк</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="f451d03b-4e0d-47b3-9f82-e53ccbf6addc">
<Name>ДрайверКлеверенсСчитывателиRFID</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Клеверенс:Считыватели RFID</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="052034e9-ff14-4f2c-89dd-d43fe2241d97">
<Name>ДрайверКристаллСервисДисплеиПокупателяVikiVision</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Кристалл Сервис:Дисплей покупателя VikiVision</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="99b66dd3-9672-4867-8c90-7351f7b33f90">
<Name>ДрайверКристаллСервисФискальныеРегистраторыPirit</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Кристалл Сервис:Фискальные регистраторы Pirit</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="9937d936-1cc2-4134-8af0-796004f0f699">
<Name>ДрайверМАСЭлектронныеВесы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>МАС:Электронные весы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="775698fc-3688-4fb3-9f0f-f73bcd6f5aa7">
<Name>ДрайверМассаКВесыСПечатьюЭтикеток</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Масса-К:Весы с печатью этикеток</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="c1a043fb-8614-4622-811a-c24ccad9ccbe">
<Name>ДрайверМассаКЭлектронныеВесы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Масса-К:Электронные весы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="5e606164-0aba-4b26-8f12-2075590452cc">
<Name>ДрайверМЕБИУСККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>МЕБИУС:ККТ с передачей данных в ОФД (54-ФЗ)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="edd11546-f7e8-488a-bc40-7ea82360164f">
<Name>ДрайверМертехВесыСПечатьюЭтикеток</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Мертех:Весы с печатью этикеток</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="ac1c50f7-aa94-4729-882d-23a55206b58c">
<Name>ДрайверМертехВесыСПечатьюЭтикетокРаспознаватель</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Мертех:Весы с печатью этикеток и устройством распознавания</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="ccd6171d-00cb-460f-a54c-e593a2edc4cb">
<Name>ДрайверМертехРаспознаватель</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Мертех:Устройство распознавания</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="5165c4d7-6c5a-4549-8ba0-1b095aeae538">
<Name>ДрайверМертехЭлектронныеВесы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Мертех:Электронные весы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="fcc09346-e54d-4b3d-bc19-0ab168116086">
<Name>ДрайверМертехЭлектронныеВесыУстройствоРаспознавания</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Мертех:Электронные весы с устройством распознавания</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="76db7951-5f0d-4e9a-b716-a5abe21ea946">
<Name>ДрайверНАИСЭлектронныеВесы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>НАИС:Весовые терминалы ВТ</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="37f6a198-4922-4207-b293-952d4de996f2">
<Name>ДрайверНЕВА54ФЗ4ФФД12</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>НЕВА:ККТ с передачей данных в ОФД (ФФД 1.2) УСН НДС</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="55430ba7-c3bb-45a4-9de9-16be9cd2e925">
<Name>ОбработчикОблачныхККТ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Обработчик облачных ККТ</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="99e14257-82cd-4b09-9000-aa8262ae3413">
<Name>ДрайверОРИОНФискальныеРегистраторы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ОРИОН:Фискальный регистратор ФР01К</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="cf2fc20a-c0c8-4b1b-9641-00308a436ad7">
<Name>ДрайверПБФЭквайринговыеТерминалы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ПБФ:Эквайринговые терминалы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="0adfad25-f800-4257-8986-e33336bc2b0f">
<Name>ДрайверПОСЦентрККТ54ФЗ4ФФД12NG</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ПОСЦентр:ККТ с передачей данных в ОФД (ФФД 1.2) NG УСН НДС</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="7723bc3f-4788-4e9c-8065-6f5e91e8da1b">
<Name>ДрайверПОСЦентрККТ54ФЗ4ФФД12</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ПОСЦентр:ККТ с передачей данных в ОФД (ФФД 1.2) УСН НДС</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="14e0a0f9-c624-49d6-b380-719e61cf9748">
<Name>ДрайверРБСВесыCПечатьюЭтикеток</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>РБС:Весы c печатью этикеток KS</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="bde057e1-da28-44ff-809a-82ffd7907afb">
<Name>ДрайверРБСВесыCПечатьюЭтикетокVenus</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>РБС:Весы c печатью этикеток Venus</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="86be8312-be0d-48a1-ad25-15e8896dbedc">
<Name>ДрайверРРЭлектроККТ54ФЗ4ФФД12</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>РР-Электро:ККТ с передачей данных в ОФД (ФФД 1.2) УСН НДС</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="49195590-1d6f-4902-8eda-db1ce775eac8">
<Name>ДрайверРусГардСчитывательМагнитныхКарт</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>РусГард:Считыватель магнитных карт</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="6ccdc818-19fe-4754-9964-1ae093cda259">
<Name>ДрайверСБРФЭквайринговыеТерминалы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>СБРФ:Эквайринговые терминалы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="f787ea5e-e14c-4a64-acc4-71350355d4d4">
<Name>ДрайверСервисПлюсВесыСПечатьюЭтикеток</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>СервисПлюс:Весы с печатью этикеток</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="4c8602a1-029b-4876-af2e-42bd03ce4950">
<Name>ДрайверСервисПлюсЭлектронныеВесы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>СервисПлюс:Электронные весы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="3093cb2e-b034-49d3-af78-61de932dc697">
<Name>ДрайверСканкодСканерШтрихкода</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Сканкод:Cканер штрихкода Chipherlab ТСД</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="e6186eb2-487e-4b1e-90bc-35bef8b61322">
<Name>ДрайверСканкодДисплеиПокупателя</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Сканкод:Дисплеи покупателя</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="507a8eb8-f103-4b2b-a8aa-791b622e98b6">
<Name>ДрайверСканкодДисплеиПокупателяNative</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Сканкод:Дисплеи покупателя (NativeAPI)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="dff4b6c4-359f-423d-807b-902d26334f44">
<Name>ДрайверСканкодПринтераЭтикетокGodexEZPL8Native</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Сканкод:Принтера этикетокGodexEZPL8 (NativeAPI)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="9c51229e-a4da-4957-9773-d59e2bd3af19">
<Name>ДрайверСканкодСканерыШтрихкода</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Сканкод:Сканеры штрихкода</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="99c78331-910b-4cde-9554-4fdda4d36588">
<Name>ДрайверСканкодСчитывательRFIDCipherLab</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Сканкод:Считыватели RFID CipherLab</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="3664c6df-f092-4e23-aab4-f1d9ac71dbb3">
<Name>ДрайверСканкодТерминалыСбораДанных</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Сканкод:Терминалы сбора данных</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="20ba91b1-e52c-4e00-9282-9caaf86f95d8">
<Name>ДрайверСканкодТерминалыСбораДанныхNative</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Сканкод:Терминалы сбора данных CipherLAB 8x00 (NativeApi)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="2db48d0f-84e7-45c7-852c-3dbee95af0a4">
<Name>ДрайверСканкодТерминалыСбораДанныхCipherLab8G2</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Сканкод:Терминалы сбора данных CipherLab8 G2</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="d9e5dbb2-fe40-4b38-8473-3b854994453a">
<Name>ДрайверСканпортТерминалСбораДанных</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Сканпорт:Терминал сбора данных</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="2fa2183a-f8db-4d0b-8b96-058f8b957545">
<Name>ДрайверСканситиПринтераЭтикеток</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Скансити:Принтер печати этикеток TSC</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="7f3784a6-6d6d-4813-bd09-af42d9e4bd76">
<Name>ДрайверСканситиТерминалСбораДанныхCitySoftBusiness</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Скансити:Терминал сбора данных CitySoft Business</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="1f770e43-7695-475a-95b8-81595394195d">
<Name>ДрайверСканситиТерминалСбораДанныхCitySoftLite</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Скансити:Терминал сбора данных CitySoft Lite</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="1d87652d-35f7-491e-a297-f5ff56b2d8ec">
<Name>ДрайверСканситиТерминалСбораДанныхCitySoftStandart</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Скансити:Терминал сбора данных CitySoft Standart</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="4ea32ec9-87a0-4893-9382-4b07d6352d49">
<Name>ДрайверСканситиТерминалыСбораДанных</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Скансити:Терминалы сбора данных</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="9fb87d91-f9a8-4a50-a479-c49bb6b76f45">
<Name>ДрайверСканситиУстройстваВвода</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Скансити:Устройства ввода данных ТСД</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="af62c556-0b54-430a-91d4-968d1cccb0f6">
<Name>ДрайверСчетмашККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Счетмаш:ККТ с передачей данных в ОФД (54-ФЗ)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="34446722-d1c7-403b-bab4-9da707199d4a">
<Name>ДрайверХарвестрТерминалыСбораДанных</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Харвестр:Приложение сбора данных</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="4f04e808-d08e-4bed-b9b8-9d66aff43de9">
<Name>ДрайверШтрихМВесыСПечатьюЭтикеток</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ШТРИХ-М:Весы с печатью этикеток</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="2c9499f4-3933-40cf-8a86-ebbec6eb528d">
<Name>ДрайверШтрихМВесыСПечатьюЭтикетокШтрихПринт</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ШТРИХ-М:Весы с печатью этикеток ШТРИХ-ПРИНТ</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="c73bc9f2-51ec-4ee6-a912-f5f0a4fd110c">
<Name>ДрайверШтрихМВесыСПечатьюЭтикетокШтрихПринтNG</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ШТРИХ-М:Весы с печатью этикеток ШТРИХ-ПРИНТ NG</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="e6e7f3ac-fee4-4023-b7d1-ea09b08bfa49">
<Name>ДрайверШтрихМДисплеиПокупателя</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ШТРИХ-М:Дисплеи покупателя</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="80dc84e2-b85b-4485-a8b3-b82b36229872">
<Name>ДрайверШтрихМККМOffline</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ШТРИХ-М:Кассир</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="fcc2f533-9db7-4a9b-a8f1-9010b77d9e0b">
<Name>ДрайверШтрихМККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ШТРИХ-М:ККТ с передачей данных в ОФД (54-ФЗ) 4.14</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="247bb057-78bb-45e3-8ba1-0c3075f9bc99">
<Name>ДрайверШтрихМККТ54ФЗ415</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ШТРИХ-М:ККТ с передачей данных в ОФД (54-ФЗ) 4.15</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="eb6b8970-5543-4b81-9065-50e528c5ea5f">
<Name>ДрайверШтрихМККТ54ФЗ4ФФД12</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ШТРИХ-М:ККТ с передачей данных в ОФД (ФФД 1.2)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="68b05a1c-d898-44f1-9d4b-b7208228807d">
<Name>ДрайверШтрихМККТ54ФЗ4ФФД12_517</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ШТРИХ-М:ККТ с передачей данных в ОФД (ФФД 1.2) 5.17</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="ee684526-6160-4e81-897a-a74180071fa9">
<Name>ДрайверШтрихМПлатежныйТерминалYarus</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ШТРИХ-М:Платежный терминал Yarus</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="bbf0cd82-7dec-4e20-be2e-3ac2d7c21daf">
<Name>ДрайверШтрихМТерминалыСбораДанных</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ШТРИХ-М:Терминалы сбора данных</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="beeee576-102d-48c5-952d-dc73d20ea6d1">
<Name>ДрайверШтрихМФискальныеРегистраторы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ШТРИХ-М:Фискальные регистраторы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="a2dcb8d0-3137-4606-8e99-c956972696d1">
<Name>ДрайверШтрихМФискальныеРегистраторыУниверсальный</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ШТРИХ-М:Фискальные регистраторы (Универсальный)</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="8d9e426d-2a9f-4404-b925-185022de70e5">
<Name>ДрайверШтрихМЭлектронныеВесы</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ШТРИХ-М:Электронные весы</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="360431a4-3d40-48c6-9544-ce849954cc4a">
<Name>ДрайверШтрихМЭлектронныеВесыPOS2</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>ШТРИХ-М:Электронные весы POS2</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="e0d91d8c-a49f-4fab-a93b-e11a6241341b">
<Name>ДрайверЭвоторДисплейПокупателя</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Эвотор:Дисплей покупателя</Description>
<IsFolder>false</IsFolder>
</Item>
<Item id="fa9df7ed-099e-4cd2-ba3d-0a2c375ba2a5">
<Name>ДрайверЭвоторККТ54ФЗ</Name>
<Code xsi:type="xs:decimal">0</Code>
<Description>Эвотор:ККТ с передачей данных в ОФД (54-ФЗ)</Description>
<IsFolder>false</IsFolder>
</Item>
</PredefinedData>

View File

@ -0,0 +1,22 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Form uuid="83e6a138-c014-40bc-a244-2eda3dadf8f7">
<Properties>
<Name>ФормаСписка</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма списка</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
</Properties>
</Form>
</MetaDataObject>

View File

@ -0,0 +1,322 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<WindowOpeningMode>DontBlock</WindowOpeningMode>
<Group>Vertical</Group>
<CommandSet>
<ExcludedCommand>Abort</ExcludedCommand>
<ExcludedCommand>Cancel</ExcludedCommand>
<ExcludedCommand>CancelSearch</ExcludedCommand>
<ExcludedCommand>ChangeHistory</ExcludedCommand>
<ExcludedCommand>Close</ExcludedCommand>
<ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>Delete</ExcludedCommand>
<ExcludedCommand>DynamicListStandardSettings</ExcludedCommand>
<ExcludedCommand>Find</ExcludedCommand>
<ExcludedCommand>FindByCurrentValue</ExcludedCommand>
<ExcludedCommand>Help</ExcludedCommand>
<ExcludedCommand>Ignore</ExcludedCommand>
<ExcludedCommand>ListSettings</ExcludedCommand>
<ExcludedCommand>LoadDynamicListSettings</ExcludedCommand>
<ExcludedCommand>No</ExcludedCommand>
<ExcludedCommand>OK</ExcludedCommand>
<ExcludedCommand>OpenFromMainServer</ExcludedCommand>
<ExcludedCommand>OpenFromStandaloneServer</ExcludedCommand>
<ExcludedCommand>RestoreValues</ExcludedCommand>
<ExcludedCommand>Retry</ExcludedCommand>
<ExcludedCommand>SaveDynamicListSettings</ExcludedCommand>
<ExcludedCommand>SaveValues</ExcludedCommand>
<ExcludedCommand>Yes</ExcludedCommand>
</CommandSet>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<Autofill>false</Autofill>
<ChildItems>
<Popup name="ПодключитьНовый" id="42">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Подключить новый</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="ПодключитьНовыйРасширеннаяПодсказка" id="43"/>
<ChildItems>
<Button name="ФормаЗагрузитьНовыйДрайверИзФайла" id="36">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.ЗагрузитьНовыйДрайверИзФайла</CommandName>
<ExtendedTooltip name="ФормаЗагрузитьНовыйДрайверИзФайлаРасширеннаяПодсказка" id="37"/>
</Button>
<Button name="ФормаУстановленныйНаЛокальномКомпьютере" id="44">
<Type>CommandBarButton</Type>
<Representation>Text</Representation>
<CommandName>Form.StandardCommand.Create</CommandName>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Установленный на локальном компьютере</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="ФормаУстановленныйНаЛокальномКомпьютереРасширеннаяПодсказка" id="45"/>
</Button>
</ChildItems>
</Popup>
</ChildItems>
</AutoCommandBar>
<Events>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
</Events>
<ChildItems>
<Table name="ДрайверыОборудования" id="3">
<Representation>List</Representation>
<DefaultItem>true</DefaultItem>
<SelectionMode>SingleRow</SelectionMode>
<RowSelectionMode>Cell</RowSelectionMode>
<InitialTreeView>ExpandTopLevel</InitialTreeView>
<EnableStartDrag>true</EnableStartDrag>
<FileDragMode>AsFile</FileDragMode>
<DataPath>Список</DataPath>
<RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath>
<CommandSet>
<ExcludedCommand>CancelSearch</ExcludedCommand>
<ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>CopyToClipboard</ExcludedCommand>
<ExcludedCommand>Delete</ExcludedCommand>
<ExcludedCommand>DynamicListStandardSettings</ExcludedCommand>
<ExcludedCommand>Find</ExcludedCommand>
<ExcludedCommand>FindByCurrentValue</ExcludedCommand>
<ExcludedCommand>ListSettings</ExcludedCommand>
<ExcludedCommand>LoadDynamicListSettings</ExcludedCommand>
<ExcludedCommand>OutputList</ExcludedCommand>
<ExcludedCommand>SaveDynamicListSettings</ExcludedCommand>
<ExcludedCommand>SearchHistory</ExcludedCommand>
</CommandSet>
<SearchStringLocation>None</SearchStringLocation>
<AutoRefresh>false</AutoRefresh>
<AutoRefreshPeriod>60</AutoRefreshPeriod>
<Period>
<v8:variant xsi:type="v8:StandardPeriodVariant">Custom</v8:variant>
<v8:startDate>0001-01-01T00:00:00</v8:startDate>
<v8:endDate>0001-01-01T00:00:00</v8:endDate>
</Period>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<RestoreCurrentRow>false</RestoreCurrentRow>
<TopLevelParent xsi:nil="true"/>
<ShowRoot>true</ShowRoot>
<AllowRootChoice>false</AllowRootChoice>
<UpdateOnDataChange>Auto</UpdateOnDataChange>
<AllowGettingCurrentRowURL>true</AllowGettingCurrentRowURL>
<ContextMenu name="ДрайверыОборудованияКонтекстноеМеню" id="4"/>
<AutoCommandBar name="ДрайверыОборудованияКоманднаяПанель" id="5">
<Autofill>false</Autofill>
</AutoCommandBar>
<ExtendedTooltip name="ДрайверыОборудованияРасширеннаяПодсказка" id="6"/>
<SearchStringAddition name="ДрайверыОборудованияСтрокаПоиска" id="7">
<Enabled>false</Enabled>
<AdditionSource>
<Item>ДрайверыОборудования</Item>
<Type>SearchStringRepresentation</Type>
</AdditionSource>
<ContextMenu name="ДрайверыОборудованияСтрокаПоискаКонтекстноеМеню" id="10"/>
<ExtendedTooltip name="ДрайверыОборудованияСтрокаПоискаРасширеннаяПодсказка" id="11"/>
</SearchStringAddition>
<ViewStatusAddition name="ДрайверыОборудованияСостояниеПросмотра" id="12">
<Enabled>false</Enabled>
<AdditionSource>
<Item>ДрайверыОборудования</Item>
<Type>ViewStatusRepresentation</Type>
</AdditionSource>
<HorizontalLocation>Left</HorizontalLocation>
<ContextMenu name="ДрайверыОборудованияСостояниеПросмотраКонтекстноеМеню" id="15"/>
<ExtendedTooltip name="ДрайверыОборудованияСостояниеПросмотраРасширеннаяПодсказка" id="16"/>
</ViewStatusAddition>
<SearchControlAddition name="ДрайверыОборудованияУправлениеПоиском" id="17">
<Enabled>false</Enabled>
<AdditionSource>
<Item>ДрайверыОборудования</Item>
<Type>SearchControl</Type>
</AdditionSource>
<ContextMenu name="ДрайверыОборудованияУправлениеПоискомКонтекстноеМеню" id="20"/>
<ExtendedTooltip name="ДрайверыОборудованияУправлениеПоискомРасширеннаяПодсказка" id="21"/>
</SearchControlAddition>
<ChildItems>
<LabelField name="Ссылка" id="46">
<DataPath>Список.Ссылка</DataPath>
<UserVisible>
<xr:Common>false</xr:Common>
</UserVisible>
<ContextMenu name="СсылкаКонтекстноеМеню" id="47"/>
<ExtendedTooltip name="СсылкаРасширеннаяПодсказка" id="48"/>
</LabelField>
<LabelField name="Наименование" id="22">
<DataPath>Список.Наименование</DataPath>
<DefaultItem>true</DefaultItem>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование</v8:content>
</v8:item>
</Title>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="23"/>
<ExtendedTooltip name="НаименованиеРасширеннаяПодсказка" id="24"/>
</LabelField>
<LabelField name="СпособПодключения" id="49">
<DataPath>Список.СпособПодключения</DataPath>
<ContextMenu name="СпособПодключенияКонтекстноеМеню" id="50"/>
<ExtendedTooltip name="СпособПодключенияРасширеннаяПодсказка" id="51"/>
</LabelField>
</ChildItems>
</Table>
</ChildItems>
<Attributes>
<Attribute name="Список" id="1">
<Type>
<v8:Type>cfg:DynamicList</v8:Type>
</Type>
<MainAttribute>true</MainAttribute>
<Settings xsi:type="DynamicList">
<ManualQuery>true</ManualQuery>
<DynamicDataRead>true</DynamicDataRead>
<QueryText>ВЫБРАТЬ
СправочникДрайверыОборудованияПереопределяемый.Ссылка,
СправочникДрайверыОборудованияПереопределяемый.ПометкаУдаления,
СправочникДрайверыОборудованияПереопределяемый.Наименование,
СправочникДрайверыОборудованияПереопределяемый.ИдентификаторОбъекта,
СправочникДрайверыОборудованияПереопределяемый.ВерсияДрайвера,
СправочникДрайверыОборудованияПереопределяемый.ТипОборудования,
СправочникДрайверыОборудованияПереопределяемый.СпособПодключения,
СправочникДрайверыОборудованияПереопределяемый.Предопределенный,
СправочникДрайверыОборудованияПереопределяемый.ИмяПредопределенныхДанных,
ВЫБОР КОГДА СправочникДрайверыОборудованияПереопределяемый.Предопределенный
ТОГДА "%1"
ИНАЧЕ "%2" КОНЕЦ КАК ВариантПоставки
ИЗ
Справочник.ДрайверыОборудования КАК СправочникДрайверыОборудованияПереопределяемый</QueryText>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>СпособПодключения</dcssch:dataPath>
<dcssch:field>СпособПодключения</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>Наименование</dcssch:dataPath>
<dcssch:field>Наименование</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>ИмяМакетаДрайвера</dcssch:dataPath>
<dcssch:field>ИмяМакетаДрайвера</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>СнятСПоддержки</dcssch:dataPath>
<dcssch:field>СнятСПоддержки</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>ЛокальныйРежим</dcssch:dataPath>
<dcssch:field>ЛокальныйРежим</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>Ссылка</dcssch:dataPath>
<dcssch:field>Ссылка</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>СетевойРежим</dcssch:dataPath>
<dcssch:field>СетевойРежим</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>СерверныйРежим</dcssch:dataPath>
<dcssch:field>СерверныйРежим</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>ПометкаУдаления</dcssch:dataPath>
<dcssch:field>ПометкаУдаления</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>ИдентификаторОбъекта</dcssch:dataPath>
<dcssch:field>ИдентификаторОбъекта</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>ВерсияДрайвера</dcssch:dataPath>
<dcssch:field>ВерсияДрайвера</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>ТипОборудования</dcssch:dataPath>
<dcssch:field>ТипОборудования</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>Предопределенный</dcssch:dataPath>
<dcssch:field>Предопределенный</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>ИмяПредопределенныхДанных</dcssch:dataPath>
<dcssch:field>ИмяПредопределенныхДанных</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>ВариантПоставки</dcssch:dataPath>
<dcssch:field>ВариантПоставки</dcssch:field>
<dcssch:title xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Вариант поставки</v8:content>
</v8:item>
</dcssch:title>
</Field>
<MainTable>Catalog.ДрайверыОборудования</MainTable>
<ListSettings>
<dcsset:filter>
<dcsset:viewMode>Normal</dcsset:viewMode>
<dcsset:userSettingID>dfcece9d-5077-440b-b6b3-45a5cb4538eb</dcsset:userSettingID>
</dcsset:filter>
<dcsset:order>
<dcsset:viewMode>Normal</dcsset:viewMode>
<dcsset:userSettingID>88619765-ccb3-46c6-ac52-38e9c992ebd4</dcsset:userSettingID>
</dcsset:order>
<dcsset:conditionalAppearance>
<dcsset:viewMode>Normal</dcsset:viewMode>
<dcsset:userSettingID>b75fecce-942b-4aed-abc9-e6a02e460fb3</dcsset:userSettingID>
</dcsset:conditionalAppearance>
<dcsset:itemsViewMode>Normal</dcsset:itemsViewMode>
<dcsset:itemsUserSettingID>911b6018-f537-43e8-a417-da56b22f9aec</dcsset:itemsUserSettingID>
</ListSettings>
</Settings>
</Attribute>
<Attribute name="ОтображатьДопЭлементы" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Отображать дополнительные элементы</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
</Attributes>
<Commands>
<Command name="ЗагрузитьНовыйДрайверИзФайла" id="3">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="УстановленныйНаЛокальномКомпьютере" id="1">
<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>

View File

@ -0,0 +1,148 @@

#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// Пропускаем инициализацию, чтобы гарантировать получение формы при передаче параметра "АвтоТест".
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
ОтображатьДопЭлементы = НЕ ОбщегоНазначенияБПО.ЭтоМобильнаяПлатформа();
// АПК: 484-выкл не используется БСП
Список.ТекстЗапроса = СтрШаблон(Список.ТекстЗапроса,
НСтр("ru = 'Поставляемый в составе конфигурации'"),
НСтр("ru = 'Подключаемый по стандарту """"1С:Совместимо""""'"));
// АПК: 484-вкл
ДобавлениеНовыхДрайверов = МенеджерОборудования.ДоступноДобавлениеНовыхДрайверов();
ПравоДоступаДобавление = ПравоДоступа("Добавление", Метаданные.Справочники.ДрайверыОборудования);
Элементы.ДрайверыОборудования.КоманднаяПанель.Видимость = ПравоДоступаДобавление;
Элементы.ДрайверыОборудования.ИзменятьСоставСтрок = ДобавлениеНовыхДрайверов;
ЭлементГруппировки = Список.Группировка.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных"));
ЭлементГруппировки.Поле = Новый ПолеКомпоновкиДанных("ВариантПоставки");
ЭлементГруппировки.Использование = Истина;
Элементы.ДрайверыОборудования.ИзменятьСоставСтрок = ДобавлениеНовыхДрайверов;
ЭлементГруппировки = Список.Группировка.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных"));
ЭлементГруппировки.Поле = Новый ПолеКомпоновкиДанных("ТипОборудования");
ЭлементГруппировки.Использование = Истина;
Элементы.ДрайверыОборудования.Шапка = ОтображатьДопЭлементы;
Элементы.ПодключитьНовый.Видимость = ОтображатьДопЭлементы;
Элементы.СпособПодключения.Видимость = ОтображатьДопЭлементы;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура УстановленныйНаЛокальномКомпьютере(Команда)
Элементы.ДрайверыОборудования.ДобавитьСтроку();
КонецПроцедуры
&НаКлиенте
Процедура ЗагрузитьНовыйДрайверИзФайла(Команда)
ДополнительныеПараметры = Новый Структура;
ДополнительныеПараметры.Вставить("Ключ", "Значение");
ПараметрыПоискаТипаКомпонентыПодключения = ВнешниеКомпонентыБПОКлиент.ПараметрыПоискаДополнительнойИнформации();
ПараметрыПоискаТипаКомпонентыПодключения.ИмяФайлаXML = "INFO.XML";
ПараметрыПоискаТипаКомпонентыПодключения.ВыражениеXPath = "//drivers/component/@type";
ПараметрыЗагрузки = ВнешниеКомпонентыБПОКлиент.ПараметрыЗагрузки();
ПараметрыЗагрузки.ПараметрыПоискаДополнительнойИнформации.Вставить("ТипКомпонентыПодключения", ПараметрыПоискаТипаКомпонентыПодключения);
Оповещение = Новый ОписаниеОповещения("ЗагрузитьНовыйДрайверИзФайла_Завершение", ЭтотОбъект, ДополнительныеПараметры);
ВнешниеКомпонентыБПОКлиент.ЗагрузитьКомпонентуИзФайла(Оповещение, ПараметрыЗагрузки);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаКлиенте
Процедура УстановитьДрайверОборудования(Команда)
ОчиститьСообщения();
ТекущиеДанные = Элементы.ДрайверыОборудования.ТекущиеДанные;
Если ТекущиеДанные = Неопределено Тогда
Возврат;
КонецЕсли;
Если ТекущиеДанные.Свойство("Ссылка") Тогда
МенеджерОборудованияКлиент.УстановитьДрайверОборудования(Неопределено, ТекущиеДанные.Ссылка);
КонецЕсли;
КонецПроцедуры
&НаСервереБезКонтекста
// Выполняет создание драйверов оборудования
//
// Параметры:
// РезультатЗагрузки - Структура:
// * Идентификатор - Строка
// * Наименование - Строка
// * Версия - Строка
// МассивТиповОборудования - Массив из ПеречислениеСсылка.ТипыПодключаемогоОборудования
//
// Возвращаемое значение:
// Массив из Структура
Функция СоздатьДрайверыОборудованияНаСервере(РезультатЗагрузки, МассивТиповОборудования)
МассивДрайверов = Новый Массив();
Для Каждого ТипОборудования Из МассивТиповОборудования Цикл
ПараметрыСоздания = МенеджерОборудованияКлиентСервер.ПараметрыСозданияНовогоДрайвера();
ПараметрыСоздания.Вставить("Загружена", Истина);
ПараметрыСоздания.ТипОборудования = ТипОборудования;
Результат = РезультатЗагрузки; // Структура
ПараметрыСоздания.ИдентификаторОбъекта = Результат.Идентификатор;
ПараметрыСоздания.Наименование = Результат.Наименование;
ПараметрыСоздания.СпособПодключения = Перечисления.СпособПодключенияДрайвера.ИзИнформационнойБазы;
НовыйЭлемент = МенеджерОборудования.СоздатьДрайверОборудования(ПараметрыСоздания);
МассивДрайверов.Добавить(НовыйЭлемент);
КонецЦикла;
Возврат МассивДрайверов;
КонецФункции
&НаКлиенте
Процедура ЗагрузитьНовыйДрайверИзФайла_Завершение(Результат, ДополнительныеПараметры) Экспорт
Если Результат.Загружена Тогда
ТипОборудования = Результат.ДополнительнаяИнформация.Получить("ТипКомпонентыПодключения");
Если ПустаяСтрока(ТипОборудования) Тогда
ПоказатьПредупреждение(, НСтр("ru = 'Не указан тип оборудования загружаемого драйвера.'") );
Возврат;
КонецЕсли;
МассивТиповОборудования = СтрРазделить(СтрЗаменить(ТипОборудования, ";", ","), ",");
МассивДрайверов = СоздатьДрайверыОборудованияНаСервере(Результат, МассивТиповОборудования);
Если МассивДрайверов.Количество()>0 Тогда
Элементы.ДрайверыОборудования.Обновить();
Элементы.ДрайверыОборудования.ТекущаяСтрока = МассивДрайверов[МассивДрайверов.ВГраница()];
КонецЕсли;
УстановитьДрайверОборудования(Неопределено);
Иначе
ПоказатьПредупреждение(, НСтр("ru = 'Ошибка загрузки нового драйвера.'") );
КонецЕсли;
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,22 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Form uuid="ccf9844e-b8ce-42c7-a651-2c5a6f71b8ca">
<Properties>
<Name>ФормаЭлемента</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма элемента</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
</Properties>
</Form>
</MetaDataObject>

View File

@ -0,0 +1,606 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<WindowOpeningMode>LockOwner</WindowOpeningMode>
<Group>Vertical</Group>
<UseForFoldersAndItems>Items</UseForFoldersAndItems>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<Autofill>false</Autofill>
<ChildItems>
<Button name="ФормаЗаписатьИЗакрыть" id="100">
<Type>CommandBarButton</Type>
<DefaultButton>true</DefaultButton>
<CommandName>Form.StandardCommand.WriteAndClose</CommandName>
<ButtonImportance>Main</ButtonImportance>
<ExtendedTooltip name="ФормаЗаписатьИЗакрытьРасширеннаяПодсказка" id="101"/>
</Button>
<Button name="ФормаЗакрыть" id="12">
<Type>CommandBarButton</Type>
<Representation>PictureAndText</Representation>
<CommandName>Form.StandardCommand.Close</CommandName>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Закрыть</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="ФормаЗакрытьРасширеннаяПодсказка" id="13"/>
</Button>
<Button name="ФормаУстановитьДрайвер" id="70">
<Type>CommandBarButton</Type>
<Visible>false</Visible>
<CommandName>Form.Command.УстановитьДрайвер</CommandName>
<ExtendedTooltip name="ФормаУстановитьДрайверРасширеннаяПодсказка" id="71"/>
</Button>
<Button name="ФормаОбновитьДрайверИзФайла" id="68">
<Type>CommandBarButton</Type>
<Visible>false</Visible>
<CommandName>Form.Command.ОбновитьДрайвер</CommandName>
<ExtendedTooltip name="ФормаОбновитьДрайверИзФайлаРасширеннаяПодсказка" id="69"/>
</Button>
<Popup name="Дополнительно" id="113">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дополнительно</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="ДополнительноРасширеннаяПодсказка" id="114"/>
<ChildItems>
<Button name="ФормаПолучитьШаблонЛокализации" id="115">
<Type>CommandBarButton</Type>
<Visible>false</Visible>
<CommandName>Form.Command.ПолучитьШаблонЛокализации</CommandName>
<ExtendedTooltip name="ФормаПолучитьШаблонЛокализацииРасширеннаяПодсказка" id="116"/>
</Button>
</ChildItems>
</Popup>
</ChildItems>
</AutoCommandBar>
<Events>
<Event name="OnOpen">ПриОткрытии</Event>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
<Event name="BeforeWriteAtServer">ПередЗаписьюНаСервере</Event>
</Events>
<ChildItems>
<UsualGroup name="СнятСПоддержки" id="128">
<Visible>false</Visible>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Снят с поддержки</v8:content>
</v8:item>
</ToolTip>
<Group>Vertical</Group>
<Representation>WeakSeparation</Representation>
<ShowTitle>false</ShowTitle>
<BackColor>style:ReportHeaderBackColor</BackColor>
<ExtendedTooltip name="СнятСПоддержкиРасширеннаяПодсказка" id="129"/>
<ChildItems>
<LabelDecoration name="СнятСПоддержкиТекст" id="72">
<AutoMaxWidth>false</AutoMaxWidth>
<HorizontalStretch>true</HorizontalStretch>
<TextColor>style:NegativeTextColor</TextColor>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Внимание! Данный драйвер устарел и снят с поддержки.
Использование данного драйвера не рекомендуется и может приводить к некорректной работе.</v8:content>
</v8:item>
</Title>
<ContextMenu name="СнятСПоддержкиТекстКонтекстноеМеню" id="73"/>
<ExtendedTooltip name="СнятСПоддержкиТекстРасширеннаяПодсказка" id="74"/>
</LabelDecoration>
<CheckBoxField name="СообщениеПриИспользовании" id="130">
<DataPath>Объект.СообщениеПриИспользовании</DataPath>
<TitleLocation>Right</TitleLocation>
<ContextMenu name="СообщениеПриИспользованииКонтекстноеМеню" id="131"/>
<ExtendedTooltip name="СообщениеПриИспользованииРасширеннаяПодсказка" id="132"/>
</CheckBoxField>
</ChildItems>
</UsualGroup>
<UsualGroup name="НеСертифицирован" id="133">
<Visible>false</Visible>
<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>
<Group>Vertical</Group>
<Representation>WeakSeparation</Representation>
<ShowTitle>false</ShowTitle>
<BackColor>style:ReportHeaderBackColor</BackColor>
<ExtendedTooltip name="НеСертифицированРасширеннаяПодсказка" id="134"/>
<ChildItems>
<LabelDecoration name="НеСертифицированТекст" id="135">
<AutoMaxWidth>false</AutoMaxWidth>
<HorizontalStretch>true</HorizontalStretch>
<TextColor>style:NegativeTextColor</TextColor>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Драйвер не сертифицирован фирмой 1С.</v8:content>
</v8:item>
</Title>
<ContextMenu name="НеСертифицированТекстКонтекстноеМеню" id="136"/>
<ExtendedTooltip name="НеСертифицированТекстРасширеннаяПодсказка" id="137"/>
</LabelDecoration>
</ChildItems>
</UsualGroup>
<LabelDecoration name="МакетНеДоступен" id="75">
<Visible>false</Visible>
<AutoMaxWidth>false</AutoMaxWidth>
<HorizontalStretch>true</HorizontalStretch>
<TextColor>style:NegativeTextColor</TextColor>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Макет для данного драйвера не найден.</v8:content>
</v8:item>
</Title>
<BackColor>style:ReportGroup1BackColor</BackColor>
<ContextMenu name="МакетНеДоступенКонтекстноеМеню" id="76"/>
<ExtendedTooltip name="МакетНеДоступенРасширеннаяПодсказка" id="77"/>
</LabelDecoration>
<LabelDecoration name="ЭтоЭмулятор" id="117">
<Visible>false</Visible>
<AutoMaxWidth>false</AutoMaxWidth>
<HorizontalStretch>true</HorizontalStretch>
<TextColor>style:NegativeTextColor</TextColor>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Внимание! Данный драйвер является эмулятором, и предназначен только для
целей тестирования разрабатываемых программных продуктов и обучения.</v8:content>
</v8:item>
</Title>
<BackColor>style:ReportGroup1BackColor</BackColor>
<ContextMenu name="ЭтоЭмуляторКонтекстноеМеню" id="118"/>
<ExtendedTooltip name="ЭтоЭмуляторРасширеннаяПодсказка" id="119"/>
</LabelDecoration>
<InputField name="ТипОборудования" id="92">
<DataPath>Объект.ТипОборудования</DataPath>
<AutoMaxWidth>false</AutoMaxWidth>
<DropListButton>true</DropListButton>
<ChoiceButton>false</ChoiceButton>
<ClearButton>false</ClearButton>
<QuickChoice>true</QuickChoice>
<ContextMenu name="ТипОборудованияКонтекстноеМеню" id="93"/>
<ExtendedTooltip name="ТипОборудованияРасширеннаяПодсказка" id="94"/>
<Events>
<Event name="StartChoice">ТипОборудованияНачалоВыбора</Event>
</Events>
</InputField>
<InputField name="Наименование" id="1">
<DataPath>Объект.Description</DataPath>
<TitleLocation>Left</TitleLocation>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="2"/>
<ExtendedTooltip name="НаименованиеРасширеннаяПодсказка" id="3"/>
</InputField>
<InputField name="РежимРаботы" id="89">
<DataPath>РежимРаботы</DataPath>
<Visible>false</Visible>
<ReadOnly>true</ReadOnly>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="РежимРаботыКонтекстноеМеню" id="90"/>
<ExtendedTooltip name="РежимРаботыРасширеннаяПодсказка" id="91"/>
</InputField>
<InputField name="ИдентификаторОбъекта" id="7">
<DataPath>Объект.ИдентификаторОбъекта</DataPath>
<TitleLocation>Left</TitleLocation>
<ToolTipRepresentation>ShowBottom</ToolTipRepresentation>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="ИдентификаторОбъектаКонтекстноеМеню" id="8"/>
<ExtendedTooltip name="ИдентификаторОбъектаРасширеннаяПодсказка" id="9">
<AutoMaxWidth>false</AutoMaxWidth>
</ExtendedTooltip>
</InputField>
<UsualGroup name="Подключение" id="123">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Подключение</v8:content>
</v8:item>
</Title>
<Group>HorizontalIfPossible</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ПодключениеРасширеннаяПодсказка" id="124"/>
<ChildItems>
<InputField name="СпособПодключения" id="95">
<DataPath>Объект.СпособПодключения</DataPath>
<ReadOnly>true</ReadOnly>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="СпособПодключенияКонтекстноеМеню" id="96"/>
<ExtendedTooltip name="СпособПодключенияРасширеннаяПодсказка" id="97"/>
</InputField>
<CheckBoxField name="БезопасноеПодключение" id="125">
<DataPath>Объект.БезопасноеПодключение</DataPath>
<TitleLocation>Right</TitleLocation>
<ContextMenu name="БезопасноеПодключениеКонтекстноеМеню" id="126"/>
<ExtendedTooltip name="БезопасноеПодключениеРасширеннаяПодсказка" id="127"/>
</CheckBoxField>
</ChildItems>
</UsualGroup>
<UsualGroup name="Группа" id="87">
<Visible>false</Visible>
<ReadOnly>true</ReadOnly>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа</v8:content>
</v8:item>
</Title>
<HorizontalStretch>true</HorizontalStretch>
<Group>HorizontalIfPossible</Group>
<Behavior>Usual</Behavior>
<Representation>WeakSeparation</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаРасширеннаяПодсказка" id="88"/>
<ChildItems>
<CheckBoxField name="Локальный" id="78">
<DataPath>Объект.ЛокальныйРежим</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Локальный</v8:content>
</v8:item>
</Title>
<TitleLocation>Right</TitleLocation>
<GroupHorizontalAlign>Right</GroupHorizontalAlign>
<ContextMenu name="ЛокальныйКонтекстноеМеню" id="79"/>
<ExtendedTooltip name="ЛокальныйРасширеннаяПодсказка" id="80"/>
</CheckBoxField>
<CheckBoxField name="СетевойРежим" id="81">
<DataPath>Объект.СетевойРежим</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Сетевой</v8:content>
</v8:item>
</Title>
<TitleLocation>Right</TitleLocation>
<GroupHorizontalAlign>Right</GroupHorizontalAlign>
<ContextMenu name="СетевойРежимКонтекстноеМеню" id="82"/>
<ExtendedTooltip name="СетевойРежимРасширеннаяПодсказка" id="83"/>
</CheckBoxField>
<CheckBoxField name="СерверныйРежим" id="84">
<DataPath>Объект.СерверныйРежим</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Серверный</v8:content>
</v8:item>
</Title>
<TitleLocation>Right</TitleLocation>
<GroupHorizontalAlign>Left</GroupHorizontalAlign>
<ContextMenu name="СерверныйРежимКонтекстноеМеню" id="85"/>
<ExtendedTooltip name="СерверныйРежимРасширеннаяПодсказка" id="86"/>
</CheckBoxField>
</ChildItems>
</UsualGroup>
<InputField name="ВерсияДрайвера" id="16">
<DataPath>Объект.ВерсияДрайвера</DataPath>
<ReadOnly>true</ReadOnly>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Версия драйвера</v8:content>
</v8:item>
</Title>
<TitleLocation>Left</TitleLocation>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="ВерсияДрайвераКонтекстноеМеню" id="17"/>
<ExtendedTooltip name="ВерсияДрайвераРасширеннаяПодсказка" id="18"/>
</InputField>
<InputField name="ТекущийСтатус" id="54">
<DataPath>ТекущийСтатус</DataPath>
<ReadOnly>true</ReadOnly>
<TitleLocation>Left</TitleLocation>
<AutoMaxWidth>false</AutoMaxWidth>
<AutoMaxHeight>false</AutoMaxHeight>
<MultiLine>false</MultiLine>
<ContextMenu name="ТекущийСтатусКонтекстноеМеню" id="55"/>
<ExtendedTooltip name="ТекущийСтатусРасширеннаяПодсказка" id="56"/>
</InputField>
<InputField name="УстановленнаяВерсия" id="62">
<DataPath>УстановленнаяВерсия</DataPath>
<ReadOnly>true</ReadOnly>
<TitleLocation>Left</TitleLocation>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="УстановленнаяВерсияКонтекстноеМеню" id="63"/>
<ExtendedTooltip name="УстановленнаяВерсияРасширеннаяПодсказка" id="64"/>
</InputField>
<UsualGroup name="ГруппаЛог" id="107">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа лог</v8:content>
</v8:item>
</Title>
<Group>AlwaysHorizontal</Group>
<Behavior>Usual</Behavior>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаЛогРасширеннаяПодсказка" id="108"/>
<ChildItems>
<InputField name="ЛогДрайвераПутьКФайлу" id="102">
<DataPath>ЛогДрайвераПутьКФайлу</DataPath>
<ToolTipRepresentation>ShowBottom</ToolTipRepresentation>
<AutoMaxWidth>false</AutoMaxWidth>
<TextEdit>false</TextEdit>
<ContextMenu name="ЛогДрайвераПутьКФайлуКонтекстноеМеню" id="103"/>
<ExtendedTooltip name="ЛогДрайвераПутьКФайлуРасширеннаяПодсказка" id="104"/>
</InputField>
<Button name="ПерейтиКФайлуЛогаДрайвера" id="111">
<Type>UsualButton</Type>
<Representation>Picture</Representation>
<CommandName>Form.Command.ПерейтиКФайлуЛогаДрайвера</CommandName>
<ExtendedTooltip name="ПерейтиКФайлуЛогаДрайвераРасширеннаяПодсказка" id="112"/>
</Button>
<Button name="СохранитьЛогДрайвера" id="109">
<Type>UsualButton</Type>
<Representation>Picture</Representation>
<CommandName>Form.Command.СохранитьЛогДрайвера</CommandName>
<ExtendedTooltip name="СохранитьЛогДрайвераРасширеннаяПодсказка" id="110"/>
</Button>
</ChildItems>
</UsualGroup>
</ChildItems>
<Attributes>
<Attribute name="Объект" id="1">
<Type>
<v8:Type>cfg:CatalogObject.ДрайверыОборудования</v8:Type>
</Type>
<MainAttribute>true</MainAttribute>
<SavedData>true</SavedData>
</Attribute>
<Attribute name="ТекущийСтатус" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Текущий статус</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="УстановленнаяВерсия" id="3">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Установленная версия</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="ДанныеДрайвера" id="4">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Данные драйвера</v8:content>
</v8:item>
</Title>
<Type/>
</Attribute>
<Attribute name="ПоставляемыйВСоставеКонфигурации" id="6">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Поставляемый в составе конфигурации</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="РежимРаботы" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Режим работы</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="ПодключениеЛокальноПоИдентификатору" id="7">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Подключение локально по идентификатору</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ПодключениеИзИнформационнойБазы" id="8">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Подключение из информационной базы</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ПодключениеИзМакета" id="9">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Подключение из макета</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ЛогДрайвераПутьКФайлу" id="10">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Лог драйвера</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="ЛогДрайвераВключен" id="11">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Лог драйвера включен</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ШаблонЛокализации" id="12">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Шаблон локализации</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="ТипОборудования" id="13">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Тип оборудования</v8:content>
</v8:item>
</Title>
<Type>
<v8:TypeSet>cfg:DefinedType.ТипыПодключаемогоОборудования</v8:TypeSet>
</Type>
</Attribute>
</Attributes>
<Commands>
<Command name="УстановитьДрайвер" id="1">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="ОбновитьДрайвер" id="2">
<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>
<Command name="СохранитьЛогДрайвера" id="3">
<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>
<Picture>
<xr:Ref>StdPicture.SaveFile</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<Action>СохранитьЛогДрайвера</Action>
</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>
<Picture>
<xr:Ref>StdPicture.ShowData</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
</Picture>
<Action>ПерейтиКФайлуЛогаДрайвера</Action>
</Command>
<Command name="ПолучитьШаблонЛокализации" id="5">
<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>

View File

@ -0,0 +1,367 @@
#Область ОбработчикиСобытийФорм
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// Пропускаем инициализацию, чтобы гарантировать получение формы при передаче параметра "АвтоТест".
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
СозданиеНового = НЕ ЗначениеЗаполнено(Объект.Ссылка);
Если СозданиеНового Тогда
Объект.СпособПодключения = Перечисления.СпособПодключенияДрайвера.ЛокальноПоИдентификатору;
Элементы.ИдентификаторОбъекта.ОтображениеПодсказки = ОтображениеПодсказки.ОтображатьСнизу;
Элементы.БезопасноеПодключение.Видимость = Ложь;
Иначе
ДанныеДрайвера = МенеджерОборудования.ДанныеДрайвераОборудования(Объект.Ссылка);
ПоставляемыйВСоставеКонфигурации = Объект.Предопределенный;
ПодключениеЛокальноПоИдентификатору = Объект.СпособПодключения = Перечисления.СпособПодключенияДрайвера.ЛокальноПоИдентификатору;
ПодключениеИзИнформационнойБазы = Объект.СпособПодключения = Перечисления.СпособПодключенияДрайвера.ИзИнформационнойБазы;
ПодключениеИзМакета = Объект.СпособПодключения = Перечисления.СпособПодключенияДрайвера.ИзМакета;
Элементы.ФормаОбновитьДрайверИзФайла.Видимость = ПодключениеИзИнформационнойБазы;
Элементы.СнятСПоддержки.Видимость = Объект.СнятСПоддержки;
Элементы.НеСертифицирован.Видимость = ДанныеДрайвера.Несертифицированное;
Элементы.СообщениеПриИспользовании.Видимость = Объект.ТипОборудования = Перечисления.ТипыПодключаемогоОборудования.ККТ;
Элементы.МакетНеДоступен.Видимость = ПодключениеИзМакета И НЕ ДанныеДрайвера.МакетДоступен И НЕ ПустаяСтрока(Объект.ИдентификаторОбъекта);
Если ПоставляемыйВСоставеКонфигурации Тогда
РежимРаботы = РежимРаботы + НСтр("ru = 'Локальный'");
КонецЕсли;
Элементы.ИдентификаторОбъекта.ОтображениеПодсказки = ОтображениеПодсказки.Всплывающая;
СвойстваТолькоПросмотр = ПоставляемыйВСоставеКонфигурации И Не ПодключениеЛокальноПоИдентификатору;
Элементы.ТипОборудования.ТолькоПросмотр = СвойстваТолькоПросмотр;
Элементы.Наименование.ТолькоПросмотр = СвойстваТолькоПросмотр;
Элементы.ИдентификаторОбъекта.ТолькоПросмотр = СвойстваТолькоПросмотр;
Элементы.ФормаЗаписатьИЗакрыть.Видимость = Не СвойстваТолькоПросмотр;
Элементы.БезопасноеПодключение.Видимость = Не (Объект.ТипОборудования = Перечисления.ТипыПодключаемогоОборудования.СканерШтрихкода
Или Объект.ТипОборудования = Перечисления.ТипыПодключаемогоОборудования.СчитывательМагнитныхКарт)
КонецЕсли;
Если Элементы.МакетНеДоступен.Видимость Тогда
Элементы.МакетНеДоступен.Заголовок = Элементы.МакетНеДоступен.Заголовок + Символы.НПП + ДанныеДрайвера.ИмяМакетаДрайвера;
КонецЕсли;
Элементы.ВерсияДрайвера.Видимость = ПодключениеИзМакета И Не ПустаяСтрока(Объект.ВерсияДрайвера);
Элементы.УстановленнаяВерсия.Видимость = Ложь;
Элементы.ГруппаЛог.Видимость = Ложь;
Элементы.ФормаЗакрыть.КнопкаПоУмолчанию = Не Элементы.ФормаЗаписатьИЗакрыть.Видимость;
Если ОбщегоНазначенияБПО.ЭтоМобильнаяПлатформа() Тогда
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.Наименование);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.ТипОборудования);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.СпособПодключения);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.РежимРаботы);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.ИдентификаторОбъекта);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.ВерсияДрайвера);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.ТекущийСтатус);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.УстановленнаяВерсия);
Элементы.БезопасноеПодключение.Видимость = Ложь;
КонецЕсли;
ОбновитьИнформациюДрайвера();
КонецПроцедуры
&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
Если Лев(ТекущийОбъект.ИдентификаторОбъекта, 6) = "AddIn." Тогда
ТекущийОбъект.ИдентификаторОбъекта = Прав(ТекущийОбъект.ИдентификаторОбъекта, СтрДлина(ТекущийОбъект.ИдентификаторОбъекта) - 6);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
#Если ВебКлиент Тогда
Элементы.БезопасноеПодключение.Доступность = Ложь;
#КонецЕсли
Если ЗначениеЗаполнено(Объект.Ссылка) Тогда
ОбновитьИнформациюДрайвераОборудования()
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура УстановитьДрайвер_Завершение(РезультатВыполнения, Параметры) Экспорт
Если РезультатВыполнения.Результат Тогда
ТекстСообщения = НСтр("ru = 'Установка драйвера оборудования завершена.'");
ОбновитьИнформациюДрайвераОборудования();
#Если МобильноеПриложениеКлиент Или МобильныйКлиент Тогда
Сообщить(ТекстСообщения);
#Иначе
ПоказатьОповещениеПользователя(НСтр("ru = 'Установка драйвера'"), , ТекстСообщения, БиблиотекаКартинок.ОформлениеЗнакФлажок,
СтатусОповещенияПользователя.Важное, ЭтаФорма.УникальныйИдентификатор);
#КонецЕсли
Иначе
ТекстСообщения = РезультатВыполнения.ОписаниеОшибки;
#Если МобильноеПриложениеКлиент Или МобильныйКлиент Тогда
Сообщить(ТекстСообщения);
#Иначе
ПоказатьОповещениеПользователя(НСтр("ru = 'Установка драйвера'"), , ТекстСообщения, БиблиотекаКартинок.ОформлениеЗнакКрест,
СтатусОповещенияПользователя.Важное, ЭтаФорма.УникальныйИдентификатор);
#КонецЕсли
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура УстановитьДрайвер(Команда)
Оповещение = Новый ОписаниеОповещения("УстановитьДрайвер_Завершение", ЭтотОбъект);
МенеджерОборудованияКлиент.УстановитьДрайверОборудования(Оповещение, Объект.Ссылка);
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьДрайвер_Завершение(Результат, ДополнительныеПараметры) Экспорт
Если Результат.Загружена Тогда
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(НСтр("ru = 'Драйвер оборудования обновлен.'"));
Записать();
ОбновитьИнформациюДрайвера();
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьДрайвер(Команда)
ДополнительныеПараметры = Новый Структура;
ДополнительныеПараметры.Вставить("Ключ", "Значение");
ПараметрыПоискаТипаКомпонентыПодключения = ВнешниеКомпонентыБПОКлиент.ПараметрыПоискаДополнительнойИнформации();
ПараметрыПоискаТипаКомпонентыПодключения.ИмяФайлаXML = "INFO.XML";
ПараметрыПоискаТипаКомпонентыПодключения.ВыражениеXPath = "//drivers/component/@type";
ПараметрыЗагрузки = ВнешниеКомпонентыБПОКлиент.ПараметрыЗагрузки();
ПараметрыЗагрузки.Идентификатор = Объект.ИдентификаторОбъекта;
ПараметрыЗагрузки.ПараметрыПоискаДополнительнойИнформации.Вставить("ТипКомпонентыПодключения", ПараметрыПоискаТипаКомпонентыПодключения);
Оповещение = Новый ОписаниеОповещения("ОбновитьДрайвер_Завершение", ЭтотОбъект, ДополнительныеПараметры);
ВнешниеКомпонентыБПОКлиент.ЗагрузитьКомпонентуИзФайла(Оповещение, ПараметрыЗагрузки);
КонецПроцедуры
&НаКлиенте
Процедура ПерейтиКФайлуЛогаДрайвера(Команда)
Оповещение = Новый ОписаниеОповещения("ЗапускПриложенияЗавершение", ЭтотОбъект);
Если МенеджерОборудованияКлиентСервер.СтрокаЗапускаБезопасная(ЛогДрайвераПутьКФайлу) Тогда
НачатьЗапускПриложения(Оповещение, ЛогДрайвераПутьКФайлу); // АПК:534 произведена проверка запуска
Иначе
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(
НСтр("ru = 'Не допускается в пути к файлу использование символов $ ` | || ; & &&'"));
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ЗапускПриложенияЗавершение(КодВозврата, ДополнительныйПараметр) Экспорт
СообщениеОбОшибке = НСтр("ru='Переход к файлу лога драйвера.'");
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(СообщениеОбОшибке);
КонецПроцедуры
&НаКлиенте
Процедура СохранениеЛогаЗавершение(ВыбранныеФайлы, ДополнительныеПараметры) Экспорт
#Если Сервер ИЛИ ТонкийКлиент ИЛИ ТолстыйКлиентОбычноеПриложение ИЛИ ТолстыйКлиентУправляемоеПриложение ИЛИ ВнешнееСоединение Тогда
Если ВыбранныеФайлы = Неопределено Тогда
Возврат;
КонецЕсли;
Попытка
ЗаписьZIP = Новый ЗаписьZipФайла(ВыбранныеФайлы[0]);
ЗаписьZIP.Добавить(ЛогДрайвераПутьКФайлу + "*", РежимСохраненияПутейZIP.СохранятьОтносительныеПути, РежимОбработкиПодкаталоговZIP.ОбрабатыватьРекурсивно);
ЗаписьZIP.Записать();
Исключение
ВызватьИсключение;
КонецПопытки;
#КонецЕсли
КонецПроцедуры
&НаКлиенте
Процедура СохранитьЛогДрайвера(Команда)
#Если ТонкийКлиент ИЛИ ТолстыйКлиентОбычноеПриложение ИЛИ ТолстыйКлиентУправляемоеПриложение Тогда
// АПК: 1348-выкл не используется модуль ФайловаяСистемаКлиент из БСП
Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
Диалог.МножественныйВыбор = Ложь;
Диалог.Каталог = ЛогДрайвераПутьКФайлу;
Диалог.Расширение = "zip";
Диалог.Фильтр = НСтр("ru = 'Файл архива'") + " (*.zip)|*.zip";
ОповещениеВыбораФайла = Новый ОписаниеОповещения("СохранениеЛогаЗавершение", ЭтотОбъект);
Диалог.Показать(ОповещениеВыбораФайла);
// АПК: 1348-вкл
#КонецЕсли
КонецПроцедуры
&НаКлиенте
Процедура СохранениеШаблонЛокализации(ВыбранныеФайлы, ДополнительныеПараметры) Экспорт
#Если Сервер ИЛИ ТонкийКлиент ИЛИ ТолстыйКлиентОбычноеПриложение ИЛИ ТолстыйКлиентУправляемоеПриложение ИЛИ ВнешнееСоединение Тогда
Если ВыбранныеФайлы = Неопределено Тогда
Возврат;
КонецЕсли;
Попытка
Текст = Новый ЗаписьТекста;
Текст.Открыть(ВыбранныеФайлы[0],КодировкаТекста.UTF8);
Текст.ЗаписатьСтроку(ШаблонЛокализации);
Текст.Закрыть();
Исключение
ВызватьИсключение;
КонецПопытки;
#КонецЕсли
КонецПроцедуры
&НаКлиенте
Процедура ПолучитьШаблонЛокализации(Команда)
#Если ТонкийКлиент ИЛИ ТолстыйКлиентОбычноеПриложение ИЛИ ТолстыйКлиентУправляемоеПриложение Тогда
// АПК: 1348-выкл не используется модуль ФайловаяСистемаКлиент из БСП
Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
Диалог.МножественныйВыбор = Ложь;
Диалог.Каталог = ЛогДрайвераПутьКФайлу;
Диалог.Расширение = "xml";
Диалог.Фильтр = НСтр("ru = 'Файл локализации драйвера'") + " (*.xml)|*.xml";
ОповещениеВыбораФайла = Новый ОписаниеОповещения("СохранениеШаблонЛокализации", ЭтотОбъект);
Диалог.Показать(ОповещениеВыбораФайла);
// АПК: 1348-вкл
#КонецЕсли
КонецПроцедуры
&НаКлиенте
Процедура ТипОборудованияНачалоВыбора(Элемент, ДанныеВыбора, ВыборДобавлением, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ДанныеВыбора = Новый СписокЗначений();
ЗаполнитьДоступныеТипыОборудования(ДанныеВыбора);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаКлиенте
Процедура ОбновитьИнформациюДрайвераОборудования_Завершение(РезультатВыполнения, Параметры) Экспорт
Если РезультатВыполнения.Результат Тогда
ОписаниеДрайвера = РезультатВыполнения.ОписаниеДрайвера;
ТекущийСтатус = НСтр("ru='Установлен на текущем устройстве'");
Если Не ПустаяСтрока(ОписаниеДрайвера.ВерсияДрайвера) Тогда
РевизииНаЭкране = СтрШаблон(НСтр("ru='(Версия требований %1)'"), ОписаниеДрайвера.РевизияИнтерфейсаПредставление);
Если ОписаниеДрайвера.ИнтеграционныйКомпонент Тогда
УстановленнаяВерсия = СтрШаблон(НСтр("ru='Интеграционный компонент %1'"), ОписаниеДрайвера.ВерсияИнтеграционногоКомпонента) + Символы.ПС +
СтрШаблон(НСтр("ru='Основная поставка %1'"), ОписаниеДрайвера.ВерсияДрайвера) + Символы.ПС +
РевизииНаЭкране;
Элементы.ТекущийСтатус.МногострочныйРежим = Ложь;
Элементы.УстановленнаяВерсия.МногострочныйРежим = Истина;
Иначе
УстановленнаяВерсия = ОписаниеДрайвера.ВерсияДрайвера;
УстановленнаяВерсия = УстановленнаяВерсия + Символы.НПП + РевизииНаЭкране;
Элементы.ТекущийСтатус.МногострочныйРежим = Истина;
КонецЕсли;
Элементы.УстановленнаяВерсия.Видимость = Истина;
Иначе
Элементы.УстановленнаяВерсия.Видимость = Ложь;
КонецЕсли;
Если ОписаниеДрайвера.ЭтоЭмулятор Тогда
Элементы.ЭтоЭмулятор.Видимость = Истина;
КонецЕсли;
Если Не ПустаяСтрока(ОписаниеДрайвера.ЛогДрайвераПутьКФайлу) Тогда
ЛогДрайвераПутьКФайлу = ОписаниеДрайвера.ЛогДрайвераПутьКФайлу;
Элементы.ГруппаЛог.Видимость = Истина;
Элементы.ЛогДрайвераПутьКФайлу.Подсказка = ?(ОписаниеДрайвера.ЛогДрайвераВключен,
НСтр("ru='Логирование операций драйвера включено'"),
НСтр("ru='Логирование операций драйвера отключено'"));
#Если ТонкийКлиент ИЛИ ТолстыйКлиентОбычноеПриложение ИЛИ ТолстыйКлиентУправляемоеПриложение Тогда
Элементы.СохранитьЛогДрайвера.Видимость = ОписаниеДрайвера.ЛогДрайвераВключен;
Элементы.ПерейтиКФайлуЛогаДрайвера.Видимость = ОписаниеДрайвера.ЛогДрайвераВключен;
#Иначе
Элементы.СохранитьЛогДрайвера.Видимость = Ложь;
Элементы.ПерейтиКФайлуЛогаДрайвера.Видимость = Ложь;
#КонецЕсли
Иначе
Элементы.ГруппаЛог.Видимость = Ложь;
КонецЕсли;
ШаблонЛокализации = ОписаниеДрайвера.ШаблонЛокализации;
#Если ТонкийКлиент ИЛИ ТолстыйКлиентОбычноеПриложение ИЛИ ТолстыйКлиентУправляемоеПриложение Тогда
Элементы.ФормаПолучитьШаблонЛокализации.Видимость = Не ПустаяСтрока(ШаблонЛокализации);
#Иначе
Элементы.ФормаПолучитьШаблонЛокализации.Видимость = Ложь;
#КонецЕсли
Элементы.ФормаУстановитьДрайвер.Видимость = Ложь;
Иначе
ТекущийСтатус = СтрШаблон(НСтр("ru='Драйвер не установлен. %1'"), РезультатВыполнения.ОписаниеОшибки);
Элементы.ТекущийСтатус.Подсказка = РезультатВыполнения.ОписаниеОшибки;
Элементы.ФормаУстановитьДрайвер.Видимость = Не ПодключениеЛокальноПоИдентификатору;
Элементы.ТекущийСтатус.МногострочныйРежим = Истина;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьИнформациюДрайвераОборудования()
Оповещение = Новый ОписаниеОповещения("ОбновитьИнформациюДрайвераОборудования_Завершение", ЭтотОбъект);
МенеджерОборудованияКлиент.НачатьПолучениеОписанияДрайвера(Оповещение, Неопределено, ДанныеДрайвера);
КонецПроцедуры
&НаСервере
Процедура ОбновитьИнформациюДрайвера()
Если ПодключениеИзИнформационнойБазы Тогда
РезультатИнформация = ВнешниеКомпонентыБПО.ИнформацияОКомпоненте(Объект.ИдентификаторОбъекта);
Если Не ПустаяСтрока(РезультатИнформация.ОписаниеОшибки) Тогда
Элементы.ИдентификаторОбъекта.Подсказка = РезультатИнформация.ОписаниеОшибки;
Элементы.ИдентификаторОбъекта.ОтображениеПодсказки = ОтображениеПодсказки.ОтображатьСнизу;
Иначе
Элементы.ИдентификаторОбъекта.ОтображениеПодсказки = ОтображениеПодсказки.Всплывающая;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаСервереБезКонтекста
Процедура ЗаполнитьДоступныеТипыОборудования(ДанныеВыбора)
ДоступныеТипыОборудования = МенеджерОборудования.ДоступныеТипыОборудования();
Для Каждого Тип Из ДоступныеТипыОборудования Цикл
ДанныеВыбора.Добавить(Тип);
КонецЦикла;
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,136 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Catalog uuid="56adc17f-18c6-4fc1-abac-58d3bf98e2b7">
<InternalInfo>
<xr:GeneratedType name="CatalogObject.НашиОрганизации" category="Object">
<xr:TypeId>b4be6869-3832-4eee-aba5-9ea8f4dc1aab</xr:TypeId>
<xr:ValueId>5c279a0e-51e2-4f2c-ace3-7ec9682df55b</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogRef.НашиОрганизации" category="Ref">
<xr:TypeId>339bcbc0-e3a4-4ff2-9c04-2b3218ffc8b7</xr:TypeId>
<xr:ValueId>0c324df9-2355-462a-b2ba-5d57a3703fdc</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogSelection.НашиОрганизации" category="Selection">
<xr:TypeId>8c0bd84f-0c6d-4bfb-8f6b-e76ec22ddcd7</xr:TypeId>
<xr:ValueId>e84650fb-5b61-4580-9ffd-862f284ea018</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogList.НашиОрганизации" category="List">
<xr:TypeId>6fa88ba9-ddc8-4133-97f3-7cae37b05eae</xr:TypeId>
<xr:ValueId>73604101-73fd-4ee3-92cf-4b10ff09d14a</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogManager.НашиОрганизации" category="Manager">
<xr:TypeId>b5792be2-15a9-4e3b-baf8-63dd7301598f</xr:TypeId>
<xr:ValueId>e0ece422-696b-4395-9a19-a086a166ba6e</xr:ValueId>
</xr:GeneratedType>
</InternalInfo>
<Properties>
<Name>НашиОрганизации</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наши организации</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Hierarchical>false</Hierarchical>
<HierarchyType>HierarchyFoldersAndItems</HierarchyType>
<LimitLevelCount>false</LimitLevelCount>
<LevelCount>2</LevelCount>
<FoldersOnTop>true</FoldersOnTop>
<UseStandardCommands>true</UseStandardCommands>
<Owners/>
<SubordinationUse>ToItems</SubordinationUse>
<CodeLength>9</CodeLength>
<DescriptionLength>25</DescriptionLength>
<CodeType>String</CodeType>
<CodeAllowedLength>Variable</CodeAllowedLength>
<CodeSeries>WholeCatalog</CodeSeries>
<CheckUnique>true</CheckUnique>
<Autonumbering>true</Autonumbering>
<DefaultPresentation>AsDescription</DefaultPresentation>
<Characteristics/>
<PredefinedDataUpdate>Auto</PredefinedDataUpdate>
<EditType>InDialog</EditType>
<QuickChoice>false</QuickChoice>
<ChoiceMode>BothWays</ChoiceMode>
<InputByString>
<xr:Field>Catalog.НашиОрганизации.StandardAttribute.Description</xr:Field>
<xr:Field>Catalog.НашиОрганизации.StandardAttribute.Code</xr:Field>
</InputByString>
<SearchStringModeOnInputByString>Begin</SearchStringModeOnInputByString>
<FullTextSearchOnInputByString>DontUse</FullTextSearchOnInputByString>
<ChoiceDataGetModeOnInputByString>Directly</ChoiceDataGetModeOnInputByString>
<DefaultObjectForm/>
<DefaultFolderForm/>
<DefaultListForm/>
<DefaultChoiceForm/>
<DefaultFolderChoiceForm/>
<AuxiliaryObjectForm/>
<AuxiliaryFolderForm/>
<AuxiliaryListForm/>
<AuxiliaryChoiceForm/>
<AuxiliaryFolderChoiceForm/>
<IncludeHelpInContents>false</IncludeHelpInContents>
<BasedOn/>
<DataLockFields/>
<DataLockControlMode>Managed</DataLockControlMode>
<FullTextSearch>Use</FullTextSearch>
<ObjectPresentation/>
<ExtendedObjectPresentation/>
<ListPresentation/>
<ExtendedListPresentation/>
<Explanation/>
<CreateOnInput>Use</CreateOnInput>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<DataHistory>DontUse</DataHistory>
<UpdateDataHistoryImmediatelyAfterWrite>false</UpdateDataHistoryImmediatelyAfterWrite>
<ExecuteAfterWriteDataHistoryVersionProcessing>false</ExecuteAfterWriteDataHistoryVersionProcessing>
</Properties>
<ChildObjects>
<Attribute uuid="765c7b41-219b-4d2b-aa62-f542949a9001">
<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>20</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>
</ChildObjects>
</Catalog>
</MetaDataObject>

View File

@ -0,0 +1,266 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Catalog uuid="a930feee-7e9f-4733-955d-866f1a2e6a98">
<InternalInfo>
<xr:GeneratedType name="CatalogObject.Номенклатура" category="Object">
<xr:TypeId>ac21d82c-4dfc-420e-85c3-75e98120eee0</xr:TypeId>
<xr:ValueId>66aa5aaf-4dbc-4fea-b702-86481e72013c</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogRef.Номенклатура" category="Ref">
<xr:TypeId>9f756708-4229-4e8b-846e-74ff29daf80a</xr:TypeId>
<xr:ValueId>496fcc0f-dc30-4c01-96ac-b1bef3d1d60e</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogSelection.Номенклатура" category="Selection">
<xr:TypeId>c4fb357f-2818-4dea-bcbe-c1f80b51a786</xr:TypeId>
<xr:ValueId>787aea69-67e9-4434-85da-9f3f9c7441ae</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogList.Номенклатура" category="List">
<xr:TypeId>8f647f00-768e-4e6b-b56c-acaeb892fab9</xr:TypeId>
<xr:ValueId>c8abf74b-e5bb-4950-b783-c0f170c1d21e</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogManager.Номенклатура" category="Manager">
<xr:TypeId>0bc5094c-8949-4f99-a139-64bd65bf825f</xr:TypeId>
<xr:ValueId>fd322be1-11e9-452e-a677-7127f784a6c0</xr:ValueId>
</xr:GeneratedType>
</InternalInfo>
<Properties>
<Name>Номенклатура</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Номенклатура</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Hierarchical>false</Hierarchical>
<HierarchyType>HierarchyFoldersAndItems</HierarchyType>
<LimitLevelCount>false</LimitLevelCount>
<LevelCount>2</LevelCount>
<FoldersOnTop>true</FoldersOnTop>
<UseStandardCommands>true</UseStandardCommands>
<Owners/>
<SubordinationUse>ToItems</SubordinationUse>
<CodeLength>11</CodeLength>
<DescriptionLength>100</DescriptionLength>
<CodeType>String</CodeType>
<CodeAllowedLength>Variable</CodeAllowedLength>
<CodeSeries>WholeCatalog</CodeSeries>
<CheckUnique>true</CheckUnique>
<Autonumbering>true</Autonumbering>
<DefaultPresentation>AsDescription</DefaultPresentation>
<Characteristics/>
<PredefinedDataUpdate>Auto</PredefinedDataUpdate>
<EditType>InDialog</EditType>
<QuickChoice>false</QuickChoice>
<ChoiceMode>BothWays</ChoiceMode>
<InputByString>
<xr:Field>Catalog.Номенклатура.StandardAttribute.Description</xr:Field>
<xr:Field>Catalog.Номенклатура.StandardAttribute.Code</xr:Field>
</InputByString>
<SearchStringModeOnInputByString>Begin</SearchStringModeOnInputByString>
<FullTextSearchOnInputByString>DontUse</FullTextSearchOnInputByString>
<ChoiceDataGetModeOnInputByString>Directly</ChoiceDataGetModeOnInputByString>
<DefaultObjectForm>Catalog.Номенклатура.Form.ФормаЭлемента</DefaultObjectForm>
<DefaultFolderForm/>
<DefaultListForm/>
<DefaultChoiceForm/>
<DefaultFolderChoiceForm/>
<AuxiliaryObjectForm/>
<AuxiliaryFolderForm/>
<AuxiliaryListForm/>
<AuxiliaryChoiceForm/>
<AuxiliaryFolderChoiceForm/>
<IncludeHelpInContents>false</IncludeHelpInContents>
<BasedOn/>
<DataLockFields/>
<DataLockControlMode>Managed</DataLockControlMode>
<FullTextSearch>Use</FullTextSearch>
<ObjectPresentation/>
<ExtendedObjectPresentation/>
<ListPresentation/>
<ExtendedListPresentation/>
<Explanation/>
<CreateOnInput>Use</CreateOnInput>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<DataHistory>DontUse</DataHistory>
<UpdateDataHistoryImmediatelyAfterWrite>false</UpdateDataHistoryImmediatelyAfterWrite>
<ExecuteAfterWriteDataHistoryVersionProcessing>false</ExecuteAfterWriteDataHistoryVersionProcessing>
</Properties>
<ChildObjects>
<Attribute uuid="4157c2fc-2f47-4b32-ab4f-5524138a7496">
<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>100</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="0cab150f-a52d-498b-80ff-05cbee70c70b">
<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>20</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>Index</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="1e4268d5-c01d-4411-b734-fe25f14e0b80">
<Properties>
<Name>Упаковка</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Упаковка, шт</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>10</v8:Digits>
<v8:FractionDigits>0</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
</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>
<Attribute uuid="c23456be-396f-43b4-8585-efe60ba51f6a">
<Properties>
<Name>ИспользуетСерии</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Использует серии</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</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>
<Form>ФормаЭлемента</Form>
</ChildObjects>
</Catalog>
</MetaDataObject>

View File

@ -0,0 +1,22 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Form uuid="0276bd15-b092-4d66-8843-745ddcf9b3e5">
<Properties>
<Name>ФормаЭлемента</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма элемента</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
</Properties>
</Form>
</MetaDataObject>

View File

@ -0,0 +1,64 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<WindowOpeningMode>LockOwner</WindowOpeningMode>
<UseForFoldersAndItems>Items</UseForFoldersAndItems>
<AutoCommandBar name="" id="-1"/>
<ChildItems>
<InputField name="Код" id="1">
<DataPath>Объект.Code</DataPath>
<EditMode>EnterOnInput</EditMode>
<ExtendedEditMultipleValues>true</ExtendedEditMultipleValues>
<ContextMenu name="КодКонтекстноеМеню" id="2"/>
<ExtendedTooltip name="КодРасширеннаяПодсказка" id="3"/>
</InputField>
<InputField name="Наименование" id="5">
<DataPath>Объект.Description</DataPath>
<EditMode>EnterOnInput</EditMode>
<ExtendedEditMultipleValues>true</ExtendedEditMultipleValues>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="6"/>
<ExtendedTooltip name="НаименованиеРасширеннаяПодсказка" id="7"/>
</InputField>
<InputField name="ТоварнаяКатегория" id="9">
<DataPath>Объект.ТоварнаяКатегория</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Товарная категория</v8:content>
</v8:item>
</Title>
<EditMode>EnterOnInput</EditMode>
<ExtendedEditMultipleValues>true</ExtendedEditMultipleValues>
<ContextMenu name="ТоварнаяКатегорияКонтекстноеМеню" id="10"/>
<ExtendedTooltip name="ТоварнаяКатегорияРасширеннаяПодсказка" id="11"/>
</InputField>
<InputField name="Штрихкод" id="13">
<DataPath>Объект.Штрихкод</DataPath>
<EditMode>EnterOnInput</EditMode>
<ExtendedEditMultipleValues>true</ExtendedEditMultipleValues>
<ContextMenu name="ШтрихкодКонтекстноеМеню" id="14"/>
<ExtendedTooltip name="ШтрихкодРасширеннаяПодсказка" id="15"/>
</InputField>
<InputField name="Упаковка" id="17">
<DataPath>Объект.Упаковка</DataPath>
<EditMode>EnterOnInput</EditMode>
<ExtendedEditMultipleValues>true</ExtendedEditMultipleValues>
<ContextMenu name="УпаковкаКонтекстноеМеню" id="18"/>
<ExtendedTooltip name="УпаковкаРасширеннаяПодсказка" id="19"/>
</InputField>
<CheckBoxField name="ИспользуетСерии" id="21">
<DataPath>Объект.ИспользуетСерии</DataPath>
<EditMode>EnterOnInput</EditMode>
<ContextMenu name="ИспользуетСерииКонтекстноеМеню" id="22"/>
<ExtendedTooltip name="ИспользуетСерииРасширеннаяПодсказка" id="23"/>
</CheckBoxField>
</ChildItems>
<Attributes>
<Attribute name="Объект" id="1">
<Type>
<v8:Type>cfg:CatalogObject.Номенклатура</v8:Type>
</Type>
<MainAttribute>true</MainAttribute>
<SavedData>true</SavedData>
</Attribute>
</Attributes>
</Form>

View File

@ -0,0 +1,90 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Catalog uuid="443dd7ab-974d-427c-bd2d-551032b7f942">
<InternalInfo>
<xr:GeneratedType name="CatalogObject.Партнеры" category="Object">
<xr:TypeId>1e302234-04c1-4523-aa49-acfe2996aab4</xr:TypeId>
<xr:ValueId>d54e0eae-5acb-4082-8d7b-a6c5a51bea88</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogRef.Партнеры" category="Ref">
<xr:TypeId>ec3fd8b7-da87-4f9e-a3e7-60a6e2084662</xr:TypeId>
<xr:ValueId>17e9abdc-1da9-4e1d-9f5e-7f1da8ebb140</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogSelection.Партнеры" category="Selection">
<xr:TypeId>28f37e09-9800-453d-802b-305d915fa911</xr:TypeId>
<xr:ValueId>f3de507f-c846-45c8-8354-3568c84ac213</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogList.Партнеры" category="List">
<xr:TypeId>784749f2-6292-4916-a83a-2f053f921092</xr:TypeId>
<xr:ValueId>850729c2-e95c-4807-9710-b5d646061756</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogManager.Партнеры" category="Manager">
<xr:TypeId>827a004d-8df1-4e67-8556-6177ad68c4ea</xr:TypeId>
<xr:ValueId>c2e2eaba-88dc-43ba-b154-85d5d0f8edc5</xr:ValueId>
</xr:GeneratedType>
</InternalInfo>
<Properties>
<Name>Партнеры</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Партнеры</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Hierarchical>false</Hierarchical>
<HierarchyType>HierarchyFoldersAndItems</HierarchyType>
<LimitLevelCount>false</LimitLevelCount>
<LevelCount>2</LevelCount>
<FoldersOnTop>true</FoldersOnTop>
<UseStandardCommands>true</UseStandardCommands>
<Owners/>
<SubordinationUse>ToItems</SubordinationUse>
<CodeLength>0</CodeLength>
<DescriptionLength>100</DescriptionLength>
<CodeType>String</CodeType>
<CodeAllowedLength>Variable</CodeAllowedLength>
<CodeSeries>WholeCatalog</CodeSeries>
<CheckUnique>false</CheckUnique>
<Autonumbering>false</Autonumbering>
<DefaultPresentation>AsDescription</DefaultPresentation>
<Characteristics/>
<PredefinedDataUpdate>Auto</PredefinedDataUpdate>
<EditType>InDialog</EditType>
<QuickChoice>false</QuickChoice>
<ChoiceMode>BothWays</ChoiceMode>
<InputByString>
<xr:Field>Catalog.Партнеры.StandardAttribute.Description</xr:Field>
</InputByString>
<SearchStringModeOnInputByString>Begin</SearchStringModeOnInputByString>
<FullTextSearchOnInputByString>DontUse</FullTextSearchOnInputByString>
<ChoiceDataGetModeOnInputByString>Directly</ChoiceDataGetModeOnInputByString>
<DefaultObjectForm/>
<DefaultFolderForm/>
<DefaultListForm/>
<DefaultChoiceForm/>
<DefaultFolderChoiceForm/>
<AuxiliaryObjectForm/>
<AuxiliaryFolderForm/>
<AuxiliaryListForm/>
<AuxiliaryChoiceForm/>
<AuxiliaryFolderChoiceForm/>
<IncludeHelpInContents>false</IncludeHelpInContents>
<BasedOn/>
<DataLockFields/>
<DataLockControlMode>Managed</DataLockControlMode>
<FullTextSearch>Use</FullTextSearch>
<ObjectPresentation/>
<ExtendedObjectPresentation/>
<ListPresentation/>
<ExtendedListPresentation/>
<Explanation/>
<CreateOnInput>Use</CreateOnInput>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<DataHistory>DontUse</DataHistory>
<UpdateDataHistoryImmediatelyAfterWrite>false</UpdateDataHistoryImmediatelyAfterWrite>
<ExecuteAfterWriteDataHistoryVersionProcessing>false</ExecuteAfterWriteDataHistoryVersionProcessing>
</Properties>
<ChildObjects/>
</Catalog>
</MetaDataObject>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,10 @@
#Область ОбработчикиСобытий
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
МенеджерОборудованияКлиент.ОткрытьПодключаемоеОборудование(ПараметрКоманды, ПараметрыВыполненияКоманды);
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<Help xmlns="http://v8.1c.ru/8.3/xcf/extrnprops" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.21">
<Page>ru</Page>
</Help>

View File

@ -0,0 +1,3 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html;charset=utf-8" http-equiv="content-type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.10570.1001"></meta></head><body>
<h1>Справочник "Подключаемое оборудование".</h1>
<p class="Usual">Список подключенного и настроенного оборудования. Оборудование подключается к выбранному рабочему месту.</p></body></html>

View File

@ -0,0 +1,528 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
// Возвращает список подключенного в справочнике ПО по установленному отбору
//
// Параметры:
// Отбор - см. МенеджерОборудованияКлиентСервер.СписокОборудованияОтбор.
//
// Возвращаемое значение:
// Массив из Структура.
//
Функция СписокОборудования(Отбор) Экспорт
Идентификатор = Отбор.Идентификатор;
ТипыПО = Отбор.ТипыПО;
РабочееМесто = Отбор.РабочееМесто;
Организация = Отбор.Организация;
МассивТиповПО = МенеджерОборудования.МассивТиповОборудования(ТипыПО);
СетевоеОборудование = Отбор.СетевоеОборудование;
ТекущийПользовательИБ = Строка(ПользователиИнформационнойБазы.ТекущийПользователь());
КодЯзыка = Отбор.КодЯзыка;
УстановитьПривилегированныйРежим(Истина);
Если НЕ ЗначениеЗаполнено(РабочееМесто) Тогда
// Если РМ не задано в параметрах, то всегда текущее из параметров сеанса.
РабочееМесто = МенеджерОборудованияВызовСервера.РабочееМестоКлиента();
КонецЕсли;
Запрос = Новый Запрос();
ТекстЗапроса = "ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ПодключаемоеОборудование.Ссылка КАК Ссылка,
| ПодключаемоеОборудование.Наименование КАК Наименование,
| ПодключаемоеОборудование.ТипОборудования КАК ТипОборудования,
| ПодключаемоеОборудование.ДрайверОборудования КАК ДрайверОборудования,
| ПодключаемоеОборудование.ДрайверОборудования.ИмяПредопределенныхДанных КАК ДрайверОборудованияИмя,
| ПодключаемоеОборудование.ДрайверОборудования.Предопределенный КАК ВСоставеКонфигурации,
| ПодключаемоеОборудование.ДрайверОборудования.ИдентификаторОбъекта КАК ИдентификаторОбъекта,
| ПодключаемоеОборудование.ДрайверОборудования.СнятСПоддержки КАК СнятСПоддержки,
| ПодключаемоеОборудование.ДрайверОборудования.СообщениеПриИспользовании КАК СообщениеПриИспользовании,
| ПодключаемоеОборудование.ДрайверОборудования.ВерсияДрайвера КАК ВерсияДрайвера,
| ПодключаемоеОборудование.ДрайверОборудования.ИмяМакетаДрайвера КАК ИмяМакетаДрайвера,
| ПодключаемоеОборудование.ДрайверОборудования.СпособПодключения КАК СпособПодключения,
| ПодключаемоеОборудование.ДрайверОборудования.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных,
| ПодключаемоеОборудование.ДрайверОборудования.БезопасноеПодключение КАК БезопасноеПодключение,
| ПодключаемоеОборудование.ТипПодключения КАК ТипПодключения,
| ПодключаемоеОборудование.РабочееМесто КАК РабочееМесто,
| ПодключаемоеОборудование.АвтоматическаяФискализация КАК АвтоматическаяФискализация,
| ПодключаемоеОборудование.ТребуетсяПереустановка КАК ТребуетсяПереустановка,
| ПодключаемоеОборудование.ТребуетсяУстановка КАК ТребуетсяУстановка,
| ПодключаемоеОборудование.ИспользуетсяФН36 КАК ИспользуетсяФН36,
| ПодключаемоеОборудование.Организация КАК Организация,
| ПодключаемоеОборудование.ОграничениеДоступа.(
| Пользователь КАК Пользователь,
| Ссылка КАК Ссылка
| ) КАК ОграничениеДоступа,
| ПодключаемоеОборудование.Параметры КАК Параметры
|ИЗ
| Справочник.ПодключаемоеОборудование КАК ПодключаемоеОборудование
|ГДЕ
| &Условие
| И НЕ ПодключаемоеОборудование.ТипОборудования В (&ИсключаемыеТипыОборудования)
| И (ПодключаемоеОборудование.Наименование <> """")
|
|УПОРЯДОЧИТЬ ПО
| Наименование";
ТекстУсловия = "(НЕ ПодключаемоеОборудование.ПометкаУдаления И ПодключаемоеОборудование.УстройствоИспользуется)";
Если Идентификатор <> Неопределено Тогда
Если ТипЗнч(Идентификатор) = Тип("Массив") Тогда
ТекстУсловия = ТекстУсловия + " И (ПодключаемоеОборудование.Ссылка В (&Идентификаторы))";
Запрос.УстановитьПараметр("Идентификаторы", Идентификатор);
Иначе
ТекстУсловия = ТекстУсловия + " И (ПодключаемоеОборудование.Ссылка = &Идентификатор)";
Запрос.УстановитьПараметр("Идентификатор", Идентификатор);
КонецЕсли;
Иначе
ТекстУсловия = ТекстУсловия + " И (ПодключаемоеОборудование.РабочееМесто = &РабочееМесто";
Запрос.УстановитьПараметр("РабочееМесто", РабочееМесто);
Если СетевоеОборудование Тогда
// Оборудование, подключенное к конкретному рабочему месту и сетевое оборудование.
ТекстУсловия = ТекстУсловия
+ " ИЛИ ПодключаемоеОборудование.ТипПодключения = ЗНАЧЕНИЕ(Перечисление.ТипыПодключенияОборудования.ОбщийДоступ))";
Иначе
ТекстУсловия = ТекстУсловия + ")";
КонецЕсли;
Если МассивТиповПО.Количество()>0 Тогда
ТекстУсловия = ТекстУсловия + " И (ПодключаемоеОборудование.ТипОборудования В (&ТипОборудования))";
Запрос.УстановитьПараметр("ТипОборудования", МассивТиповПО);
КонецЕсли;
Если Организация <> Неопределено Тогда
ТекстУсловия = ТекстУсловия + " И (ПодключаемоеОборудование.Организация = &Организация)";
Запрос.УстановитьПараметр("Организация", Организация);
КонецЕсли;
КонецЕсли;
ИсключаемыеТипыОборудования = Новый Массив();
ИсключаемыеТипыОборудования.Добавить(Перечисления.ТипыПодключаемогоОборудования.УдалитьККМОфлайн);
Запрос.УстановитьПараметр("ИсключаемыеТипыОборудования", ИсключаемыеТипыОборудования);
Запрос.Текст = СтрЗаменить(ТекстЗапроса, "&Условие", ТекстУсловия);
Выборка = Запрос.Выполнить().Выбрать();
// Перебирая выборку составляем список устройств
СписокОборудования = Новый Массив();
Пока Выборка.Следующий() Цикл
ДанныеУстройства = ЗаполнитьДанныеУстройства(Выборка, ТекущийПользовательИБ, КодЯзыка);
СписокОборудования.Добавить(ДанныеУстройства);
КонецЦикла;
// Возвращаем полученный список с данными всех найденных устройств
Возврат СписокОборудования;
КонецФункции
// Функция возвращает по идентификатору устройства его параметры
//
// Параметры:
// Идентификатор - СправочникСсылка.ПодключаемоеОборудование.
//
// Возвращаемое значение:
// - Произвольный
// - Структура
//
Функция ПараметрыУстройства(Идентификатор) Экспорт
Запрос = Новый Запрос("
|ВЫБРАТЬ
| ПодключаемоеОборудование.Параметры
|ИЗ
| Справочник.ПодключаемоеОборудование КАК ПодключаемоеОборудование
|ГДЕ
| ПодключаемоеОборудование.Ссылка = &Идентификатор");
Запрос.УстановитьПараметр("Идентификатор", Идентификатор);
Выборка = Запрос.Выполнить().Выбрать();
Выборка.Следующий();
ПараметрыОборудования = Выборка.Параметры; // ХранилищеЗначения
Результат = ПараметрыОборудования.Получить();
Возврат Результат;
КонецФункции
// Процедура предназначена для сохранения параметров устройства
// в реквизит Параметры типа хранилище значения в элементе справочника.
//
// Параметры:
// Идентификатор - СправочникСсылка.ПодключаемоеОборудование.
// Параметры - Структура - параметры устройства.
//
// Возвращаемое значение:
// Булево.
//
Функция СохранитьПараметрыУстройства(Идентификатор, Параметры) Экспорт
Запрос = Новый Запрос();
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| ПодключаемоеОборудование.Ссылка КАК Ссылка
|ИЗ
| Справочник.ПодключаемоеОборудование КАК ПодключаемоеОборудование
|ГДЕ
| ПодключаемоеОборудование.Ссылка = &Идентификатор";
Запрос.УстановитьПараметр("Идентификатор", Идентификатор);
РезультатЗапроса = Запрос.Выполнить();
Если РезультатЗапроса.Пустой() Тогда
Возврат Ложь;
КонецЕсли;
Попытка
Выборка = РезультатЗапроса.Выбрать();
Выборка.Следующий();
ОбъектСправочника = Выборка.Ссылка.ПолучитьОбъект(); // СправочникОбъект.ПодключаемоеОборудование
ОбъектСправочника.Заблокировать();
ОбъектСправочника.Параметры = Новый ХранилищеЗначения(Параметры);
ОбъектСправочника.Записать();
Результат = Истина;
Исключение
Результат = Ложь;
КонецПопытки;
Возврат Результат;
КонецФункции
// Функция возвращает структуру с данными устройства
//
// Параметры:
// Идентификатор - СправочникСсылка.ПодключаемоеОборудование.
// КодЯзыка - Строка
//
// Возвращаемое значение:
// - Произвольный
// - Неопределено
// - Структура:
// * Ссылка - СправочникСсылка.ПодключаемоеОборудование
// * ТипОборудования - Структура
// * Наименование - Строка
// * Параметры - Структура
// * ДрайверОборудования - СправочникСсылка.ДрайверыОборудования
// * ВСоставеКонфигурации - Булево
// * ИдентификаторОбъекта - Строка
// * СнятСПоддержки - Булево
// * ВерсияДрайвера - Строка
// * СетевоеОборудование - Булево
// * СпособПодключения - ПеречислениеСсылка.СпособПодключенияДрайвера
// * ПодключениеИзМакета - Булево
// * ПодключениеЛокальноПоИдентификатору - Булево
// * ИмяМакетаДрайвера - Строка
// * МакетДоступен - Булево
// * АвтоматическаяФискализация - Булево
// * ИспользуетсяФН36 - Булево
// * ТребуетсяПереустановка - Булево
// * ТребуетсяУстановка - Булево
// * ОграничениеДоступа - Массив из Строка
// * ДоступноТекущемуПользователю - Булево
// * ПараметрыРегистрации - Структура
//
Функция ДанныеУстройства(Идентификатор, КодЯзыка = Неопределено) Экспорт
СписокОтбор = МенеджерОборудованияКлиентСервер.СписокОборудованияОтбор();
СписокОтбор.Идентификатор = Идентификатор;
СписокОтбор.КодЯзыка = КодЯзыка;
СписокОборудования = СписокОборудования(СписокОтбор);
Если СписокОборудования.Количество() > 0 Тогда
Результат = СписокОборудования[0]
Иначе
Результат = Неопределено;
КонецЕсли;
Возврат Результат;
КонецФункции
// СтандартныеПодсистемы.УправлениеДоступом
// См. УправлениеДоступомПереопределяемый.ПриЗаполненииСписковСОграничениемДоступа.
//
// Параметры:
// Ограничение - Структура:
// * Текст - Строка - ограничение доступа для пользователей.
// Если пустая строка, значит, доступ разрешен.
// * ТекстДляВнешнихПользователей - Строка - ограничение доступа для внешних пользователей.
// Если пустая строка, значит, доступ запрещен.
// * ПоВладельцуБезЗаписиКлючейДоступа - Неопределено - определить автоматически.
// - Булево - если Ложь, то всегда записывать ключи доступа,
// если Истина, тогда не записывать ключи доступа,
// а использовать ключи доступа владельца (требуется,
// чтобы ограничение было строго по объекту-владельцу).
// * ПоВладельцуБезЗаписиКлючейДоступаДляВнешнихПользователей - Неопределено, Булево - также
// как у параметра ПоВладельцуБезЗаписиКлючейДоступа.
//
Процедура ПриЗаполненииОграниченияДоступа(Ограничение) Экспорт
Менеджер = "Справочник.ПодключаемоеОборудование";
МенеджерОборудованияВызовСервераПереопределяемый.ПриЗаполненииОграниченияДоступа(Менеджер, Ограничение);
КонецПроцедуры
// Конец СтандартныеПодсистемы.УправлениеДоступом
// Процедура заполняет элемент в справочнике подключаемое оборудование.
//
// Параметры:
// ПараметрыСоздания - Структура - параметры создания подключаемог оборудования.
//
// Возвращаемое значение:
// СправочникСсылка.ПодключаемоеОборудование -
//
Функция СоздатьНовыйЭлемент(ПараметрыСоздания) Экспорт
НовыйЭлемент = Справочники.ПодключаемоеОборудование.СоздатьЭлемент();
Если ТипЗнч(ПараметрыСоздания.ТипОборудования) = Тип("Строка") Тогда
ПараметрыСоздания.ТипОборудования = МенеджерОборудования.ТипОборудованияПоСтроке(ПараметрыСоздания.ТипОборудования);
КонецЕсли;
Наименование = ПараметрыСоздания.Наименование;
Если ПустаяСтрока(Наименование) Тогда
Наименование = "'" + Строка(ПараметрыСоздания.ДрайверОборудования) + "'"
+ ?(ПустаяСтрока(Строка(ПараметрыСоздания.РабочееМесто)), "", " " + НСтр("ru='на'") + " " + Строка(ПараметрыСоздания.РабочееМесто));
КонецЕсли;
НовыйЭлемент.Наименование = Наименование;
НовыйЭлемент.ТипОборудования = ПараметрыСоздания.ТипОборудования;
НовыйЭлемент.ТипПодключения = ПараметрыСоздания.ТипПодключения;
НовыйЭлемент.УстройствоИспользуется = ПараметрыСоздания.УстройствоИспользуется;
НовыйЭлемент.ДрайверОборудования = ПараметрыСоздания.ДрайверОборудования;
НовыйЭлемент.Организация = ПараметрыСоздания.Организация;
НовыйЭлемент.РабочееМесто = ПараметрыСоздания.РабочееМесто;
НовыйЭлемент.СерийныйНомер = ПараметрыСоздания.СерийныйНомер;
НовыйЭлемент.СпособФорматноЛогическогоКонтроля = ПараметрыСоздания.СпособФорматноЛогическогоКонтроля;
НовыйЭлемент.ДопустимоеРасхождениеФорматноЛогическогоКонтроля = ПараметрыСоздания.ДопустимоеРасхождениеФорматноЛогическогоКонтроля;
НовыйЭлемент.ИспользуетсяФН36 = ПараметрыСоздания.ИспользуетсяФН36;
НовыйЭлемент.Записать();
Возврат НовыйЭлемент.Ссылка;
КонецФункции
#КонецОбласти
#Область СлужебныйПрограммныйИнтерфейс
// Возвращает таблицу драйверов по всему оборудованию которое добавлено в справочник
// подключаемого оборудования
//
// Параметры:
// СпособПодключения - ПеречислениеСсылка.СпособПодключенияДрайвера - если значение не передано,
// тогда будет отобрано независимо от способа подключения
//
// Возвращаемое значение:
// ТаблицаЗначений:
// * Ссылка - СправочникСсылка.ДрайверыОборудования
// * Наименование - Строка
// * Идентификатор - Строка
// * Версия - Строка
// * СпособПодключения - ПеречислениеСсылка.СпособПодключенияДрайвера
// * ИмяМакета - Строка - имя макета в котором находится драйвер
// * МакетДоступен - Булево - если Ложь, тогда в библиотеке отсутствует макет драйвера
// * ВходитВБПО - Булево - флаг того что драйвер включен в библиотеку БПО
Функция ИспользуемыеДрайверы(СпособПодключения = Неопределено) Экспорт
УстановитьПривилегированныйРежим(Истина);
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ РАЗЛИЧНЫЕ
| ПодключаемоеОборудование.ДрайверОборудования.Ссылка КАК ДрайверОборудованияСсылка
|ПОМЕСТИТЬ ИспользуемыеДрайвера
|ИЗ
| Справочник.ПодключаемоеОборудование КАК ПодключаемоеОборудование
|ГДЕ
| ПодключаемоеОборудование.УстройствоИспользуется
| И НЕ ПодключаемоеОборудование.ПометкаУдаления
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ДрайверыОборудования.Ссылка КАК Ссылка,
| ДрайверыОборудования.ИдентификаторОбъекта КАК Идентификатор,
| ДрайверыОборудования.Наименование КАК Наименование,
| ДрайверыОборудования.ВерсияДрайвера КАК Версия,
| ДрайверыОборудования.СпособПодключения КАК СпособПодключения,
| ВЫРАЗИТЬ("""" КАК СТРОКА(100)) КАК ИмяМакета,
| ЛОЖЬ КАК МакетДоступен,
| ДрайверыОборудования.ИмяМакетаДрайвера КАК ИмяМакетаДрайвера,
| ДрайверыОборудования.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных,
| ДрайверыОборудования.Предопределенный КАК ВходитВБПО
|ИЗ
| Справочник.ДрайверыОборудования КАК ДрайверыОборудования
|ГДЕ
| ДрайверыОборудования.Ссылка В
| (ВЫБРАТЬ
| ИспользуемыеДрайвера.ДрайверОборудованияСсылка КАК ДрайверОборудованияСсылка
| ИЗ
| ИспользуемыеДрайвера КАК ИспользуемыеДрайвера)";
Если СпособПодключения <> Неопределено Тогда
Запрос.Текст = Запрос.Текст + "
| И ДрайверыОборудования.СпособПодключения = &СпособПодключения";
Запрос.УстановитьПараметр("СпособПодключения", СпособПодключения);
КонецЕСли;
РезультатЗапроса = Запрос.Выполнить();
РезультатТаблица = РезультатЗапроса.Выгрузить();
Для Каждого Строка Из РезультатТаблица Цикл
МакетДоступен = Ложь;
ИмяДрайвера = Строка.ИмяПредопределенныхДанных;
ИмяМакетаДрайвера = Строка.ИмяМакетаДрайвера;
Если Не ПустаяСтрока(ИмяДрайвера) Тогда
МенеджерОборудования.ЗаполнитьДанныеМакетов(ИмяДрайвера, ИмяМакетаДрайвера, МакетДоступен, Неопределено);
КонецЕсли;
Строка.ИмяМакета = ?(МакетДоступен, СтрЗаменить(ИмяМакетаДрайвера, "ОбщийМакет.", ""), "");
Строка.МакетДоступен = МакетДоступен;
КонецЦикла;
ИндексКолонки = РезультатТаблица.Колонки.Найти("ИмяПредопределенныхДанных");
РезультатТаблица.Колонки.Удалить(ИндексКолонки);
ИндексКолонки = РезультатТаблица.Колонки.Найти("ИмяМакетаДрайвера");
РезультатТаблица.Колонки.Удалить(ИндексКолонки);
Возврат РезультатТаблица;
КонецФункции
// Возвращает массив драйверов по всему оборудованию которое добавлено в справочник
// подключаемого оборудования
//
// Возвращаемое значение:
// Массив из Строка - массив содержащий идентификаторы драйверов
Функция ИдентификаторыИспользуемыхДрайверов() Экспорт
УстановитьПривилегированныйРежим(Истина);
Результат = Новый Массив();
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ РАЗЛИЧНЫЕ
| ПодключаемоеОборудование.ДрайверОборудования.Ссылка КАК ДрайверОборудованияСсылка
|ПОМЕСТИТЬ ИспользуемыеДрайвера
|ИЗ
| Справочник.ПодключаемоеОборудование КАК ПодключаемоеОборудование
|ГДЕ
| ПодключаемоеОборудование.УстройствоИспользуется
| И НЕ ПодключаемоеОборудование.ПометкаУдаления
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ДрайверыОборудования.ИдентификаторОбъекта КАК Идентификатор
|ИЗ
| Справочник.ДрайверыОборудования КАК ДрайверыОборудования
|ГДЕ
| ДрайверыОборудования.Ссылка В
| (ВЫБРАТЬ
| ИспользуемыеДрайвера.ДрайверОборудованияСсылка КАК ДрайверОборудованияСсылка
| ИЗ
| ИспользуемыеДрайвера КАК ИспользуемыеДрайвера)
| И ДрайверыОборудования.Предопределенный";
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Результат.Добавить(Выборка.Идентификатор);
КонецЦикла;
Возврат Результат;
КонецФункции
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
// Заполнить структуру данных устройства
//
Функция ЗаполнитьДанныеУстройства(Выборка, ТекущийПользовательИБ, КодЯзыка)
ДанныеУстройства = Новый Структура();
ПараметрыОборудования = Выборка.Параметры; // ХранилищеЗначения
ДанныеУстройства.Вставить("Ссылка" , Выборка.Ссылка);
ДанныеУстройства.Вставить("ТипыОборудования" , МенеджерОборудования.ПараметрыТипыОборудования(Выборка.ТипОборудования));
ДанныеУстройства.Вставить("ТипОборудования" , Выборка.ТипОборудования);
ДанныеУстройства.Вставить("ТипОборудованияИмя" , XMLСтрока(Выборка.ТипОборудования));
ДанныеУстройства.Вставить("Наименование" , Выборка.Наименование);
ДанныеУстройства.Вставить("Параметры" , ПараметрыОборудования.Получить());
ДанныеУстройства.Вставить("ДрайверОборудования" , Выборка.ДрайверОборудования);
ДанныеУстройства.Вставить("ВСоставеКонфигурации" , Выборка.ВСоставеКонфигурации);
ДанныеУстройства.Вставить("ИдентификаторОбъекта" , Выборка.ИдентификаторОбъекта);
ДанныеУстройства.Вставить("СнятСПоддержки" , Выборка.СнятСПоддержки);
ДанныеУстройства.Вставить("СообщениеПриИспользовании" , Выборка.СообщениеПриИспользовании);
ДанныеУстройства.Вставить("ВерсияДрайвера" , Выборка.ВерсияДрайвера);
ДанныеУстройства.Вставить("СетевоеОборудование" , Выборка.ТипПодключения = Перечисления.ТипыПодключенияОборудования.ОбщийДоступ);
ДанныеУстройства.Вставить("БезопасноеПодключение" , Выборка.БезопасноеПодключение);
ДанныеУстройства.Вставить("ПараметрыXML" , МенеджерОборудования.ПолучитьПараметрыXML(ДанныеУстройства.Параметры, ДанныеУстройства.ТипОборудованияИмя));
ДанныеУстройства.Вставить("ПараметрыПриложенияXML" , МенеджерОборудования.ПараметрыПриложенияДляДрайвера());
СпособПодключения = Выборка.СпособПодключения;
ПодключениеИзМакета = СпособПодключения = Перечисления.СпособПодключенияДрайвера.ИзМакета;
ПодключениеЛокальноПоИдентификатору = СпособПодключения = Перечисления.СпособПодключенияДрайвера.ЛокальноПоИдентификатору;
ШаблонЛокализации = Неопределено;
МакетДоступен = Ложь;
ИмяДрайвера = Выборка.ИмяПредопределенныхДанных;
ИмяМакетаДрайвера = Выборка.ИмяМакетаДрайвера;
Если Не ПустаяСтрока(ИмяДрайвера) Тогда
МенеджерОборудования.ЗаполнитьДанныеМакетов(ИмяДрайвера, ИмяМакетаДрайвера, МакетДоступен, ШаблонЛокализации, КодЯзыка);
КонецЕсли;
ДанныеУстройства.Вставить("СпособПодключения" , СпособПодключения);
ДанныеУстройства.Вставить("ПодключениеИзМакета" , ПодключениеИзМакета);
ДанныеУстройства.Вставить("ПодключениеЛокальноПоИдентификатору", ПодключениеЛокальноПоИдентификатору);
ДанныеУстройства.Вставить("ИмяМакетаДрайвера" , ИмяМакетаДрайвера);
ДанныеУстройства.Вставить("МакетДоступен" , МакетДоступен);
ДанныеУстройства.Вставить("ШаблонЛокализации" , ШаблонЛокализации);
ДанныеУстройства.Вставить("АвтоматическаяФискализация" , Выборка.АвтоматическаяФискализация);
ДанныеУстройства.Вставить("ИспользуетсяФН36" , Выборка.ИспользуетсяФН36);
ДанныеУстройства.Вставить("ТребуетсяПереустановка" , Выборка.ТребуетсяПереустановка);
ДанныеУстройства.Вставить("ТребуетсяУстановка" , Выборка.ТребуетсяУстановка);
ДанныеУстройства.Вставить("Организация" , Выборка.Организация);
ТипыОборудования = МенеджерОборудования.ДоступныеТипыНесертифицированногоОборудования();
Если ТипыОборудования.Найти(Выборка.ТипОборудования) = Неопределено Тогда
Несертифицированное = Ложь;
Иначе
Несертифицированное = Истина;
КонецЕсли;
ДанныеУстройства.Вставить("Несертифицированное" , Несертифицированное);
// Ограничение доступа
ОграничениеДоступа = Новый Массив();
РезультатЗапросаОграничениеДоступа = Выборка.ОграничениеДоступа; // РезультатЗапроса
ВыборкаОграничениеДоступа = РезультатЗапросаОграничениеДоступа.Выбрать();
Пока ВыборкаОграничениеДоступа.Следующий() Цикл
ОграничениеДоступа.Добавить(Строка(ВыборкаОграничениеДоступа.Пользователь));
КонецЦикла;
ДанныеУстройства.Вставить("ОграничениеДоступа", ОграничениеДоступа);
Если ОграничениеДоступа.Количество() > 0 Тогда
ДоступноТекущемуПользователю = ОграничениеДоступа.Найти(ТекущийПользовательИБ) <> Неопределено;
Иначе
ДоступноТекущемуПользователю = Истина;
КонецЕсли;
ДанныеУстройства.Вставить("ДоступноТекущемуПользователю", ДоступноТекущемуПользователю);
Если Выборка.ТипОборудования = Перечисления.ТипыПодключаемогоОборудования.ККТ
И ОбщегоНазначенияБПО.ИспользуетсяЧекопечатающиеУстройства() Тогда
МодульОборудованиеЧекопечатающиеУстройства = ОбщегоНазначенияБПО.ОбщийМодуль("ОборудованиеЧекопечатающиеУстройства");
ПараметрыРегистрации = МодульОборудованиеЧекопечатающиеУстройства.ПараметрыРегистрацииУстройства(Выборка.Ссылка);
Иначе
ПараметрыРегистрации = Новый Структура();
КонецЕсли;
ДанныеУстройства.Вставить("ПараметрыРегистрации", ПараметрыРегистрации);
Возврат ДанныеУстройства;
КонецФункции
#КонецОбласти
#КонецЕсли

View File

@ -0,0 +1,99 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий
// Процедура производит инициализацию параметров устройства.
//
Процедура ПередЗаписью(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Если ЭтоНовый() Тогда
Параметры = Новый ХранилищеЗначения(Новый Структура());
КонецЕсли;
КонецПроцедуры // ПередЗаписью()
// При записи
//
Процедура ПриЗаписи(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
КонецПроцедуры
// Процедура производит очистку реквизитов, которые не должны копироваться.
// Следующие реквизиты очищаются при копировании:
// "Параметры" - параметры устройства сбрасываются в Неопределено;
// "Наименование" - устанавливается отличное от исходного наименования.
Процедура ПриКопировании(ОбъектКопирования)
УстройствоИспользуется = Истина;
Параметры = Неопределено;
Наименование = НСтр("ru='%Наименование% (копия)'");
Наименование = СтрЗаменить(Наименование, "%Наименование%", ОбъектКопирования.Наименование);
КонецПроцедуры
// Процедура проверяет уникальность наименования элемента справочника
// для данного компьютера.
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
Если Не ПустаяСтрока(Наименование) Тогда
Запрос = Новый Запрос("
|ВЫБРАТЬ
| 1
|ИЗ
| Справочник.ПодключаемоеОборудование КАК ПодключаемоеОборудование
|ГДЕ
| ПодключаемоеОборудование.Наименование = &Наименование
| И ПодключаемоеОборудование.РабочееМесто = &РабочееМесто
| И ПодключаемоеОборудование.Ссылка <> &Ссылка
|");
Запрос.УстановитьПараметр("Наименование", Наименование);
Запрос.УстановитьПараметр("РабочееМесто", РабочееМесто);
Запрос.УстановитьПараметр("Ссылка" , Ссылка);
Если Не Запрос.Выполнить().Пустой() Тогда
ОбщегоНазначенияБПО.СообщитьПользователю(НСтр("ru='Укажите уникальное наименование.'"), ЭтотОбъект, , , Отказ);
КонецЕсли;
КонецЕсли;
Если ТипОборудования <> Перечисления.ТипыПодключаемогоОборудования.ККТ
И ТипОборудования <> Перечисления.ТипыПодключаемогоОборудования.ФискальныйРегистратор
И ТипОборудования <> Перечисления.ТипыПодключаемогоОборудования.ПринтерЧеков Тогда
ИндексЭлемента = ПроверяемыеРеквизиты.Найти("Организация");
Если ИндексЭлемента <> Неопределено Тогда
ПроверяемыеРеквизиты.Удалить(ИндексЭлемента);
КонецЕсли;
КонецЕсли;
Если ТипОборудования <> Перечисления.ТипыПодключаемогоОборудования.ККТ Тогда
ИндексЭлемента = ПроверяемыеРеквизиты.Найти("СпособФорматноЛогическогоКонтроля");
Если ИндексЭлемента <> Неопределено Тогда
ПроверяемыеРеквизиты.Удалить(ИндексЭлемента);
КонецЕсли;
КонецЕсли;
КонецПроцедуры // ОбработкаПроверкиЗаполнения()
Процедура ОбработкаЗаполнения(ДанныеЗаполнения, ТекстЗаполнения, СтандартнаяОбработка)
Если ОбщегоНазначенияБПО.ИспользуетсяФорматноЛогическийКонтроль() Тогда
Если НЕ ЗначениеЗаполнено(СпособФорматноЛогическогоКонтроля) Тогда
СпособФорматноЛогическогоКонтроля = Перечисления.СпособыФорматноЛогическогоКонтроля.РазделятьСтроки;
ДопустимоеРасхождениеФорматноЛогическогоКонтроля = 0.01;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#КонецЕсли

View File

@ -0,0 +1,22 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Form uuid="d897ad1c-91d7-4d10-a0d9-b63c0ebbd91b">
<Properties>
<Name>ФормаАвторизацииЭТ</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма авторизации ЭТ</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
</Properties>
</Form>
</MetaDataObject>

View File

@ -0,0 +1,244 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Авторизация операции</v8:content>
</v8:item>
</Title>
<WindowOpeningMode>DontBlock</WindowOpeningMode>
<AutoTitle>false</AutoTitle>
<Group>Vertical</Group>
<VerticalScroll>useIfNecessary</VerticalScroll>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<Autofill>false</Autofill>
<ChildItems>
<Button name="ВыполнитьОперацию" id="10">
<Type>CommandBarButton</Type>
<DefaultButton>true</DefaultButton>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ВыполнитьОперацию</CommandName>
<ButtonImportance>Main</ButtonImportance>
<ExtendedTooltip name="ВыполнитьОперациюExtendedTooltip" id="18"/>
</Button>
<Button name="ФормаОтмена" id="28">
<Type>CommandBarButton</Type>
<CommandName>Form.StandardCommand.Cancel</CommandName>
<ExtendedTooltip name="ФормаОтменаРасширеннаяПодсказка" id="29"/>
</Button>
</ChildItems>
</AutoCommandBar>
<Events>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
</Events>
<ChildItems>
<InputField name="Сумма" id="1">
<DataPath>Сумма</DataPath>
<DefaultItem>true</DefaultItem>
<MarkRequiredComplete>true</MarkRequiredComplete>
<AutoMaxWidth>false</AutoMaxWidth>
<ChoiceButton>false</ChoiceButton>
<SpinButton>true</SpinButton>
<AutoMarkIncomplete>true</AutoMarkIncomplete>
<ContextMenu name="СуммаКонтекстноеМеню" id="2"/>
<ExtendedTooltip name="СуммаExtendedTooltip" id="19"/>
<Events>
<Event name="TextEditEnd">СуммаОкончаниеВводаТекста</Event>
</Events>
</InputField>
<RadioButtonField name="ТипКарты" id="16">
<DataPath>ТипКарты</DataPath>
<TitleLocation>Left</TitleLocation>
<RadioButtonType>Auto</RadioButtonType>
<ColumnsCount>1</ColumnsCount>
<ContextMenu name="ТипКартыКонтекстноеМеню" id="17"/>
<ExtendedTooltip name="ТипКартыExtendedTooltip" id="20"/>
</RadioButtonField>
<InputField name="НомерКарты" id="14">
<DataPath>НомерКарты</DataPath>
<ReadOnly>true</ReadOnly>
<SkipOnInput>true</SkipOnInput>
<MarkRequiredComplete>true</MarkRequiredComplete>
<AutoMaxWidth>false</AutoMaxWidth>
<Mask>9999 9999 9999 9999 9999</Mask>
<AutoMarkIncomplete>true</AutoMarkIncomplete>
<TextEdit>false</TextEdit>
<ContextMenu name="НомерКартыКонтекстноеМеню" id="15"/>
<ExtendedTooltip name="НомерКартыExtendedTooltip" id="21"/>
</InputField>
<CheckBoxField name="УказатьДополнительныеДанные" id="12">
<DataPath>УказатьДополнительныеДанные</DataPath>
<SkipOnInput>true</SkipOnInput>
<TitleLocation>Right</TitleLocation>
<ContextMenu name="УказатьДополнительныеДанныеКонтекстноеМеню" id="13"/>
<ExtendedTooltip name="УказатьДополнительныеДанныеExtendedTooltip" id="22"/>
<Events>
<Event name="OnChange">УказатьДополнительныеДанныеПриИзменении</Event>
</Events>
</CheckBoxField>
<UsualGroup name="ГруппаРучнойВводДанных" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дополнительные данные операции</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Behavior>Usual</Behavior>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name=руппаРучнойВводДанныхExtendedTooltip" id="23"/>
<ChildItems>
<InputField name="СсылочныйНомер" id="6">
<DataPath>СсылочныйНомер</DataPath>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="СсылочныйНомерКонтекстноеМеню" id="7"/>
<ExtendedTooltip name="СсылочныйНомерExtendedTooltip" id="24"/>
</InputField>
<InputField name="НомерЧека" id="8">
<DataPath>НомерЧека</DataPath>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="НомерЧекаКонтекстноеМеню" id="9"/>
<ExtendedTooltip name="НомерЧекаExtendedTooltip" id="25"/>
</InputField>
</ChildItems>
</UsualGroup>
</ChildItems>
<Attributes>
<Attribute name="Сумма" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Сумма</v8:content>
</v8:item>
</Title>
<Type>
<v8:TypeSet>cfg:DefinedType.ДенежнаяСуммаНеотрицательная</v8:TypeSet>
</Type>
</Attribute>
<Attribute name="СсылочныйНомер" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Ссылочный номер</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="НомерЧека" id="3">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Номер чека</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="УказатьДополнительныеДанные" id="4">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Указать дополнительные данные</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="НомерКарты" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Номер карты</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="ТипКарты" id="7">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Тип карты</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>0</v8:Digits>
<v8:FractionDigits>0</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
</Type>
</Attribute>
<Attribute name="ПоказыватьНомерКарты" id="8">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Показывать номер карты</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="НомерЧекаЭТ" id="9">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Номер чека ЭТ</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
</Attributes>
<Commands>
<Command name="ВыполнитьОперацию" id="1">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
</Commands>
<Parameters>
<Parameter name="ПараметрыФормы">
<Type>
<v8:Type>v8:ValueListType</v8:Type>
</Type>
<KeyParameter>true</KeyParameter>
</Parameter>
</Parameters>
</Form>

View File

@ -0,0 +1,156 @@

#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// Пропускаем инициализацию, чтобы гарантировать получение формы при передаче параметра "АвтоТест".
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
СписокТиповКарт = Неопределено;
СуммаВременная = 0;
Если Параметры.Свойство("Сумма", СуммаВременная)
И СуммаВременная > 0 Тогда
Сумма = СуммаВременная;
Иначе
Сумма = 0;
КонецЕсли;
времПределСуммы = 0;
Если Параметры.Свойство("ПределСуммы", времПределСуммы)
И времПределСуммы > 0 Тогда
Элементы.Сумма.МаксимальноеЗначение = времПределСуммы;
Иначе
Элементы.Сумма.МаксимальноеЗначение = Неопределено;
КонецЕсли;
Если Параметры.Свойство("ЗапретРедактированияСуммы") Тогда
Элементы.Сумма.ТолькоПросмотр = Параметры.ЗапретРедактированияСуммы;
КонецЕсли;
Если Параметры.Свойство("СписокТиповКарт", СписокТиповКарт)
И ТипЗнч(СписокТиповКарт) = Тип("СписокЗначений")
И СписокТиповКарт. Количество() > 0 Тогда
Для Каждого СтрокаСписка Из СписокТиповКарт Цикл
Элементы.ТипКарты.СписокВыбора.Добавить(СтрокаСписка.Значение, СтрокаСписка.Представление);
КонецЦикла;
Элементы.ТипКарты.Видимость = Истина;
КонецЕсли;
Элементы.НомерКарты.Видимость = Ложь;
Элементы.НомерКарты.ТолькоПросмотр = Истина;
Элементы.НомерКарты.РедактированиеТекста = Ложь;
Если Параметры.Свойство("ПоказыватьНомерКарты", ПоказыватьНомерКарты) Тогда
Если ПоказыватьНомерКарты Тогда
Элементы.НомерКарты.Видимость = Истина;
Элементы.НомерКарты.ТолькоПросмотр = Ложь;
Элементы.НомерКарты.РедактированиеТекста = Истина;
КонецЕсли;
КонецЕсли;
Если Элементы.Сумма.ТолькоПросмотр Тогда
Элементы.Сумма.АктивизироватьПоУмолчанию = Ложь;
Если Элементы.ТипКарты.Видимость И Элементы.ТипКарты.СписокВыбора.Количество() > 1 Тогда
Элементы.ТипКарты.АктивизироватьПоУмолчанию = Истина;
ИначеЕсли Элементы.НомерКарты.Видимость Тогда
Элементы.НомерКарты.АктивизироватьПоУмолчанию = Истина;
Иначе
Элементы.ВыполнитьОперацию.АктивизироватьПоУмолчанию = Истина;
КонецЕсли;
КонецЕсли;
Если Параметры.Свойство("УказатьДополнительныеДанные") Тогда
УказатьДополнительныеДанные = Истина;
КонецЕсли;
Если Параметры.Свойство("СсылочныйНомер") Тогда
СсылочныйНомер = Параметры.СсылочныйНомер;
КонецЕсли;
Если Параметры.Свойство("НомерЧека") Тогда
НомерЧека = Параметры.НомерЧека;
КонецЕсли;
Элементы.ГруппаРучнойВводДанных.Видимость = УказатьДополнительныеДанные;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура УказатьДополнительныеДанныеПриИзменении(Элемент)
Элементы.ГруппаРучнойВводДанных.Видимость = УказатьДополнительныеДанные;
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьОперацию(Команда)
Ошибки = "";
ОчиститьСообщения();
Если Сумма = 0 Тогда
Ошибки = НСтр("ru='Платеж не может быть осуществлен на нулевую сумму.'");
КонецЕсли;
Если ПоказыватьНомерКарты И Не ЗначениеЗаполнено(НомерКарты) Тогда
Ошибки = Ошибки + ?(ПустаяСтрока(Ошибки),"",Символы.ПС) + НСтр("ru='Платеж не может быть осуществлен без номера карты.'");
КонецЕсли;
Если ПустаяСтрока(Ошибки) Тогда
Если Не УказатьДополнительныеДанные Тогда
СсылочныйНомер = "";
НомерЧека = "";
НомерЧекаЭТ = "";
КонецЕсли;
СтруктураВозврата = Новый Структура();
СтруктураВозврата.Вставить("Сумма" , Сумма);
СтруктураВозврата.Вставить("ДанныеКарты" , "");
СтруктураВозврата.Вставить("СсылочныйНомер", СсылочныйНомер);
СтруктураВозврата.Вставить("ТипКарты" , ТипКарты);
СтруктураВозврата.Вставить("НомерКарты" , НомерКарты);
СтруктураВозврата.Вставить("НомерЧека" , НомерЧека);
СтруктураВозврата.Вставить("НомерЧекаЭТ" , НомерЧекаЭТ);
Закрыть(СтруктураВозврата);
Иначе
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(Ошибки,,"НомерКарты");
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаКлиенте
Процедура СуммаОкончаниеВводаТекста(Элемент, Текст, ДанныеВыбора, СтандартнаяОбработка)
Если Элементы.Сумма.МаксимальноеЗначение <> Неопределено
И Элементы.Сумма.МаксимальноеЗначение < Число(Текст) Тогда
СтандартнаяОбработка = Ложь;
СтруктураЗначения = Новый Структура;
СтруктураЗначения.Вставить("Предупреждение", НСтр("ru = 'Сумма оплаты по карте превышает необходимую безналичную оплату.
|Значение будет изменено на максимально возможное.'"));
СтруктураЗначения.Вставить("Значение", Формат(Элементы.Сумма.МаксимальноеЗначение, "ЧДЦ=2; ЧН=0; ЧГ=0; ЧО=1"));
СписокЗначений = Новый СписокЗначений;
СписокЗначений.Добавить(СтруктураЗначения);
ДанныеВыбора = СписокЗначений;
КонецЕсли;
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,22 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Form uuid="f31862f2-9e12-492c-bb00-1bb25119d33c">
<Properties>
<Name>ФормаВыбораРабочегоМеста</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма выбора рабочего места</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
</Properties>
</Form>
</MetaDataObject>

View File

@ -0,0 +1,130 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Рабочее место подключаемого оборудования текущего сеанса</v8:content>
</v8:item>
</Title>
<WindowOpeningMode>DontBlock</WindowOpeningMode>
<AutoSaveDataInSettings>Use</AutoSaveDataInSettings>
<AutoTitle>false</AutoTitle>
<Group>Vertical</Group>
<Customizable>false</Customizable>
<VerticalScroll>useIfNecessary</VerticalScroll>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<ChildItems>
<Button name="ВыбратьИЗакрыть" id="12">
<Type>CommandBarButton</Type>
<DefaultButton>true</DefaultButton>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ВыбратьИЗакрыть</CommandName>
<ButtonImportance>Main</ButtonImportance>
<ExtendedTooltip name="ВыбратьИЗакрытьExtendedTooltip" id="13"/>
</Button>
</ChildItems>
</AutoCommandBar>
<Events>
<Event name="NotificationProcessing">ОбработкаОповещения</Event>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
</Events>
<ChildItems>
<LabelDecoration name="НадписьВыбора" id="3">
<AutoMaxWidth>false</AutoMaxWidth>
<Height>2</Height>
<SkipOnInput>false</SkipOnInput>
<Font ref="style:NormalTextFont" bold="true" italic="false" underline="false" strikeout="false" kind="StyleItem"/>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Выберите рабочее место из списка, если подключение и настройка оборудования производилась ранее</v8:content>
</v8:item>
</Title>
<ContextMenu name="НадписьВыбораКонтекстноеМеню" id="4"/>
<ExtendedTooltip name="НадписьВыбораExtendedTooltip" id="14"/>
</LabelDecoration>
<InputField name="РабочееМесто" id="1">
<DataPath>РабочееМесто</DataPath>
<AutoMaxWidth>false</AutoMaxWidth>
<ChoiceParameters>
<app:item name="Отбор.ПометкаУдаления">
<app:value xsi:type="FormChoiceListDesTimeValue">
<Presentation/>
<Value xsi:type="xs:boolean">false</Value>
</app:value>
</app:item>
</ChoiceParameters>
<ContextMenu name="РабочееМестоКонтекстноеМеню" id="2"/>
<ExtendedTooltip name="РабочееМестоExtendedTooltip" id="15"/>
</InputField>
</ChildItems>
<Attributes>
<Attribute name="РабочееМесто" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Рабочее место</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>cfg:CatalogRef.РабочиеМеста</v8:Type>
</Type>
<FillCheck>ShowError</FillCheck>
</Attribute>
<Attribute name="ИдентификаторКлиента" id="3">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Идентификатор клиента</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
</Attributes>
<Commands>
<Command name="ВыбратьИЗакрыть" id="2">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
</Commands>
<Parameters>
<Parameter name="РабочееМесто">
<Type>
<v8:Type>cfg:CatalogRef.РабочиеМеста</v8:Type>
</Type>
<KeyParameter>true</KeyParameter>
</Parameter>
<Parameter name="ОткрыватьПриПервомОбращении">
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Parameter>
<Parameter name="ИдентификаторКлиента">
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Parameter>
</Parameters>
</Form>

View File

@ -0,0 +1,57 @@

#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// Пропускаем инициализацию, чтобы гарантировать получение формы при передаче параметра "АвтоТест".
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
РабочееМесто = МенеджерОборудованияВызовСервера.РабочееМестоКлиента();
ИдентификаторКлиента = Параметры.ИдентификаторКлиента;
Если Не ПустаяСтрока(ИдентификаторКлиента) Тогда
НовыйМассив = Новый Массив();
НовыйМассив.Добавить(Новый ПараметрВыбора("Отбор.ПометкаУдаления", Ложь));
НовыйМассив.Добавить(Новый ПараметрВыбора("Отбор.Код", ИдентификаторКлиента));
НовыйФиксированныйМассив = Новый ФиксированныйМассив(НовыйМассив);
Элементы.РабочееМесто.ПараметрыВыбора = НовыйФиксированныйМассив;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия = "ИзмененоРабочееМестоТекущегоСеанса" Тогда
РабочееМесто = МенеджерОборудованияКлиент.РабочееМестоКлиента();
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура ВыбратьИЗакрыть(Команда)
ОчиститьСообщения();
Если ЗначениеЗаполнено(РабочееМесто) Тогда
Параметры.РабочееМесто = РабочееМесто;
ОчиститьСообщения();
СтруктураВозврата = Новый Структура("РабочееМесто", РабочееМесто);
Закрыть(СтруктураВозврата);
Иначе
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(НСтр("ru='Выберите рабочее место'"), РабочееМесто, "РабочееМесто");
КонецЕсли;
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<Help xmlns="http://v8.1c.ru/8.3/xcf/extrnprops" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.21">
<Page>ru</Page>
</Help>

View File

@ -0,0 +1,3 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html;charset=utf-8" http-equiv="content-type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 9.00.8112.16476"></meta></head><body>
<h2 style="color: #1f4e79">Форма Рабочее место подключаемого оборудования текущего сеанса</h2>
<p class="Usual">Форма предназначена для выбора рабочего места подключаемого оборудования для текущего сеанса.</p></body></html>

View File

@ -0,0 +1,22 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Form uuid="2186a8b7-967a-4302-b817-8b2a9ed6774b">
<Properties>
<Name>ФормаНастройки</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма настройки компоненты подключения оборудования по стандарту "1С: Совместимо"</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>true</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
</Properties>
</Form>
</MetaDataObject>

View File

@ -0,0 +1,979 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<WindowOpeningMode>DontBlock</WindowOpeningMode>
<AutoTitle>false</AutoTitle>
<Group>Vertical</Group>
<Customizable>false</Customizable>
<VerticalScroll>useIfNecessary</VerticalScroll>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<Autofill>false</Autofill>
<ChildItems>
<Button name="ЗаписатьИЗакрыть" id="1">
<Type>CommandBarButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ЗаписатьИЗакрыть</CommandName>
<ExtendedTooltip name="ЗаписатьИЗакрытьExtendedTooltip" id="74"/>
</Button>
<Button name="ТестУстройства" id="25">
<Type>CommandBarButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ТестПодключения</CommandName>
<ExtendedTooltip name="ТестУстройстваExtendedTooltip" id="79"/>
</Button>
<Button name="АвтонастройкаУстройства" id="200">
<Type>CommandBarButton</Type>
<Visible>false</Visible>
<CommandName>Form.Command.АвтонастройкаУстройства</CommandName>
<ExtendedTooltip name="АвтонастройкаУстройстваРасширеннаяПодсказка" id="201"/>
</Button>
<Popup name="Функции" id="24">
<EnableContentChange>true</EnableContentChange>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Функции</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name=ункцииExtendedTooltip" id="75"/>
<ChildItems>
<ButtonGroup name="ДополнительныеДействия" id="71">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дополнительные действия</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name=ополнительныеДействияExtendedTooltip" id="78"/>
</ButtonGroup>
</ChildItems>
</Popup>
<Button name="Справка" id="3">
<Type>CommandBarButton</Type>
<Visible>false</Visible>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.StandardCommand.Help</CommandName>
<ExtendedTooltip name="СправкаExtendedTooltip" id="80"/>
</Button>
<Button name="ФормаОчиститьПараметры" id="202">
<Type>CommandBarButton</Type>
<Visible>false</Visible>
<CommandName>Form.Command.ОчиститьПараметры</CommandName>
<ExtendedTooltip name="ФормаОчиститьПараметрыРасширеннаяПодсказка" id="203"/>
</Button>
</ChildItems>
</AutoCommandBar>
<Events>
<Event name="OnOpen">ПриОткрытии</Event>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
</Events>
<ChildItems>
<UsualGroup name="ГруппаДемонстрационныйРежим" id="54">
<Visible>false</Visible>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Демонстрационный режим</v8:content>
</v8:item>
</Title>
<Height>3</Height>
<Group>Vertical</Group>
<Behavior>Usual</Behavior>
<Representation>WeakSeparation</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name=руппаДемонстрационныйРежимExtendedTooltip" id="89"/>
<ChildItems>
<LabelField name="ДемонстрационныйРежим" id="51">
<DataPath>ДемонстрационныйРежим</DataPath>
<ReadOnly>true</ReadOnly>
<TitleLocation>None</TitleLocation>
<AutoMaxWidth>false</AutoMaxWidth>
<AutoMaxHeight>false</AutoMaxHeight>
<HorizontalStretch>true</HorizontalStretch>
<VerticalStretch>true</VerticalStretch>
<TextColor>style:SpecialTextColor</TextColor>
<ContextMenu name="ДемонстрационныйРежимКонтекстноеМеню" id="52"/>
<ExtendedTooltip name=емонстрационныйРежимExtendedTooltip" id="90"/>
</LabelField>
</ChildItems>
</UsualGroup>
<Pages name="СтатусКомпоненты" id="134">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Статус компоненты</v8:content>
</v8:item>
</Title>
<HorizontalStretch>true</HorizontalStretch>
<PagesRepresentation>None</PagesRepresentation>
<ExtendedTooltip name="СтатусКомпонентыРасширеннаяПодсказка" id="135"/>
<ChildItems>
<Page name="КомпонентаПолучениеИнформации" id="156">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Компонента получение информации</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<ScrollOnCompress>false</ScrollOnCompress>
<ExtendedTooltip name="КомпонентаПолучениеИнформацииРасширеннаяПодсказка" id="157"/>
<ChildItems>
<LabelDecoration name="ДекорацияПолучениеИнформации" id="158">
<AutoMaxWidth>false</AutoMaxWidth>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Получение информации о компоненте подключения оборудования…</v8:content>
</v8:item>
</Title>
<ContextMenu name="ДекорацияПолучениеИнформацииКонтекстноеМеню" id="159"/>
<ExtendedTooltip name="ДекорацияПолучениеИнформацииРасширеннаяПодсказка" id="160"/>
</LabelDecoration>
</ChildItems>
</Page>
<Page name="КомпонентаНеУстановлена" id="138">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Компонента не установлена</v8:content>
</v8:item>
</Title>
<HorizontalStretch>false</HorizontalStretch>
<Group>Vertical</Group>
<ScrollOnCompress>false</ScrollOnCompress>
<ExtendedTooltip name="КомпонентаНеУстановленаРасширеннаяПодсказка" id="139"/>
<ChildItems>
<LabelDecoration name="КомпонентаНеУстановленТекст" id="142">
<Width>60</Width>
<HorizontalStretch>false</HorizontalStretch>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Для использования подключаемого оборудования необходимо установить драйвер на текущем рабочем месте.</v8:content>
</v8:item>
</Title>
<ContextMenu name="КомпонентаНеУстановленТекстКонтекстноеМеню" id="143"/>
<ExtendedTooltip name="КомпонентаНеУстановленТекстРасширеннаяПодсказка" id="144"/>
</LabelDecoration>
<Button name="Установить" id="140">
<Type>UsualButton</Type>
<CommandName>Form.Command.УстановитьДрайвер</CommandName>
<ExtendedTooltip name="УстановитьРасширеннаяПодсказка" id="141"/>
</Button>
</ChildItems>
</Page>
<Page name="КомпонентаУстановлена" id="26">
<ReadOnly>true</ReadOnly>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Драйвер</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<ScrollOnCompress>false</ScrollOnCompress>
<ExtendedTooltip name="КомпонентаУстановленаРасширеннаяПодсказка" id="81"/>
<ChildItems>
<UsualGroup name="ДрайверОборудования" id="136">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Информация</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Behavior>Usual</Behavior>
<Representation>None</Representation>
<ExtendedTooltip name="ДрайверОборудованияРасширеннаяПодсказка" id="137"/>
<ChildItems>
<UsualGroup name="ГруппаВерсия" id="45">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа версия</v8:content>
</v8:item>
</Title>
<Group>Horizontal</Group>
<Behavior>Usual</Behavior>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаВерсияРасширеннаяПодсказка" id="82"/>
<ChildItems>
<InputField name="Статус" id="27">
<DataPath>ДрайверУстановлен</DataPath>
<ReadOnly>true</ReadOnly>
<AutoMaxWidth>false</AutoMaxWidth>
<Wrap>false</Wrap>
<ContextMenu name="СтатусКонтекстноеМеню" id="28"/>
<ExtendedTooltip name="СтатусРасширеннаяПодсказка" id="83"/>
</InputField>
<InputField name="Версия" id="29">
<DataPath>ВерсияДрайвера</DataPath>
<ReadOnly>true</ReadOnly>
<AutoMaxWidth>false</AutoMaxWidth>
<Wrap>false</Wrap>
<ContextMenu name="ВерсияКонтекстноеМеню" id="30"/>
<ExtendedTooltip name="ВерсияExtendedTooltip" id="84"/>
</InputField>
</ChildItems>
</UsualGroup>
<UsualGroup name="Описание" id="53">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Описание</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Behavior>Usual</Behavior>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ОписаниеExtendedTooltip" id="85"/>
<ChildItems>
<InputField name="НаименованиеДрайвера" id="43">
<DataPath>НаименованиеДрайвера</DataPath>
<ReadOnly>true</ReadOnly>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование</v8:content>
</v8:item>
</Title>
<AutoMaxWidth>false</AutoMaxWidth>
<HorizontalStretch>true</HorizontalStretch>
<ContextMenu name="НаименованиеДрайвераКонтекстноеМеню" id="44"/>
<ExtendedTooltip name="НаименованиеДрайвераExtendedTooltip" id="86"/>
</InputField>
<InputField name="ОписаниеДрайвера" id="46">
<DataPath>ОписаниеДрайвера</DataPath>
<ReadOnly>true</ReadOnly>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Описание</v8:content>
</v8:item>
</Title>
<TitleLocation>Left</TitleLocation>
<AutoMaxWidth>false</AutoMaxWidth>
<HorizontalStretch>true</HorizontalStretch>
<MultiLine>true</MultiLine>
<ContextMenu name="ОписаниеДрайвераКонтекстноеМеню" id="47"/>
<ExtendedTooltip name="ОписаниеДрайвераExtendedTooltip" id="87"/>
</InputField>
</ChildItems>
</UsualGroup>
<LabelDecoration name="ДекорацияИнформацияОбОкружении" id="197">
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Информация об окружении</v8:content>
</v8:item>
</Title>
<GroupHorizontalAlign>Right</GroupHorizontalAlign>
<Hyperlink>true</Hyperlink>
<ContextMenu name="ДекорацияИнформацияОбОкруженииКонтекстноеМеню" id="198"/>
<ExtendedTooltip name="ДекорацияИнформацияОбОкруженииРасширеннаяПодсказка" id="199"/>
<Events>
<Event name="Click">ДекорацияИнформацияОбОкруженииНажатие</Event>
</Events>
</LabelDecoration>
</ChildItems>
</UsualGroup>
<UsualGroup name="ДрайверОсновнаяПоставка" id="192">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Основная поставка</v8:content>
</v8:item>
</Title>
<Group>HorizontalIfPossible</Group>
<Behavior>Usual</Behavior>
<ControlRepresentation>Button</ControlRepresentation>
<Representation>None</Representation>
<ExtendedTooltip name="ДрайверОсновнаяПоставкаРасширеннаяПодсказка" id="193"/>
<ChildItems>
<LabelDecoration name="ОсновнаяПоставкаУстановлена" id="194">
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="ОсновнаяПоставкаУстановленаКонтекстноеМеню" id="195"/>
<ExtendedTooltip name="ОсновнаяПоставкаУстановленаРасширеннаяПодсказка" id="196"/>
</LabelDecoration>
</ChildItems>
</UsualGroup>
</ChildItems>
</Page>
<Page name="ДрайверИнтеграционныйКомпонент" id="145">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Установлен интеграционный компонент</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<ScrollOnCompress>false</ScrollOnCompress>
<ExtendedTooltip name="ДрайверИнтеграционныйКомпонентРасширеннаяПодсказка" id="146"/>
<ChildItems>
<LabelDecoration name="ДрайверПредупреждение" id="150">
<AutoMaxWidth>false</AutoMaxWidth>
<TextColor>style:SpecialTextColor</TextColor>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Установка драйвера "%1" не завершена.
</v8:content>
</v8:item>
</Title>
<ContextMenu name="ДрайверПредупреждениеКонтекстноеМеню" id="151"/>
<ExtendedTooltip name="ДрайверПредупреждениеРасширеннаяПодсказка" id="152"/>
</LabelDecoration>
<LabelDecoration name="ИнтеграционныйКомпонентУстановлен" id="147">
<AutoMaxWidth>false</AutoMaxWidth>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>На текущем рабочем месте установлен интеграционный компонент к основной поставке драйвера.
Основная поставка драйвера устанавливается с помощью дистрибутива, полученного из внешнего источника.</v8:content>
</v8:item>
</Title>
<ContextMenu name="ИнтеграционныйКомпонентУстановленКонтекстноеМеню" id="148"/>
<ExtendedTooltip name="ИнтеграционныйКомпонентУстановленРасширеннаяПодсказка" id="149"/>
</LabelDecoration>
<LabelDecoration name="ПерейтиНаСайтПроизводителя" id="153">
<AutoMaxWidth>false</AutoMaxWidth>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Перейти на сайт поставщика</v8:content>
</v8:item>
</Title>
<Hyperlink>true</Hyperlink>
<ContextMenu name="ПерейтиНаСайтПроизводителяКонтекстноеМеню" id="154"/>
<ExtendedTooltip name="ПерейтиНаСайтПроизводителяРасширеннаяПодсказка" id="155"/>
<Events>
<Event name="Click">УстановитьДрайвер</Event>
</Events>
</LabelDecoration>
</ChildItems>
</Page>
<Page name="УстройствоПодключено" id="188">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Устройство подключено</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<ScrollOnCompress>false</ScrollOnCompress>
<ExtendedTooltip name="УстройствоПодключеноРасширеннаяПодсказка" id="189"/>
<ChildItems>
<LabelDecoration name="УстройствоПодключеноСообщение" id="91">
<AutoMaxWidth>false</AutoMaxWidth>
<Height>2</Height>
<TextColor>style:SpecialTextColor</TextColor>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Устройство подключено, настройки не могут быть изменены.
Для отключения устройства требуется закрыть все формы приложения для текущей информационной базы.</v8:content>
</v8:item>
</Title>
<ContextMenu name="УстройствоПодключеноСообщениеКонтекстноеМеню" id="92"/>
<ExtendedTooltip name="УстройствоПодключеноСообщениеРасширеннаяПодсказка" id="93"/>
</LabelDecoration>
<Button name="Закрыть" id="190">
<Type>UsualButton</Type>
<DefaultButton>true</DefaultButton>
<CommandName>Form.StandardCommand.Close</CommandName>
<ButtonImportance>Main</ButtonImportance>
<ExtendedTooltip name="ЗакрытьРасширеннаяПодсказка" id="191"/>
</Button>
</ChildItems>
</Page>
</ChildItems>
</Pages>
<Pages name="Страницы" id="73">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Страницы</v8:content>
</v8:item>
</Title>
<PagesRepresentation>None</PagesRepresentation>
<ExtendedTooltip name="СтраницыExtendedTooltip" id="88"/>
</Pages>
<UsualGroup name="ПрефиксыИСуффиксыДорожек" id="161">
<Visible>false</Visible>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Префиксы и суффиксы дорожек</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Behavior>Usual</Behavior>
<Representation>None</Representation>
<ExtendedTooltip name="ПрефиксыИСуффиксыДорожекРасширеннаяПодсказка" id="162"/>
<ChildItems>
<Table name="ПараметрыДорожек" id="163">
<Representation>List</Representation>
<TitleLocation>Auto</TitleLocation>
<CommandBarLocation>None</CommandBarLocation>
<SkipOnInput>false</SkipOnInput>
<ChangeRowSet>false</ChangeRowSet>
<ChangeRowOrder>false</ChangeRowOrder>
<HeightInTableRows>3</HeightInTableRows>
<SelectionMode>SingleRow</SelectionMode>
<RowSelectionMode>Cell</RowSelectionMode>
<AutoInsertNewRow>true</AutoInsertNewRow>
<EnableStartDrag>true</EnableStartDrag>
<EnableDrag>true</EnableDrag>
<FileDragMode>AsFile</FileDragMode>
<DataPath>ПараметрыДорожек</DataPath>
<SearchStringLocation>None</SearchStringLocation>
<ViewStatusLocation>None</ViewStatusLocation>
<SearchControlLocation>None</SearchControlLocation>
<RowFilter xsi:nil="true"/>
<ContextMenu name="ПараметрыДорожекКонтекстноеМеню" id="164"/>
<AutoCommandBar name="ПараметрыДорожекКоманднаяПанель" id="165"/>
<ExtendedTooltip name="ПараметрыДорожекРасширеннаяПодсказка" id="166"/>
<SearchStringAddition name="ПараметрыДорожекСтрокаПоиска" id="167">
<AdditionSource>
<Item>ПараметрыДорожек</Item>
<Type>SearchStringRepresentation</Type>
</AdditionSource>
<ContextMenu name="ПараметрыДорожекСтрокаПоискаКонтекстноеМеню" id="168"/>
<ExtendedTooltip name="ПараметрыДорожекСтрокаПоискаРасширеннаяПодсказка" id="169"/>
</SearchStringAddition>
<ViewStatusAddition name="ПараметрыДорожекСостояниеПросмотра" id="170">
<AdditionSource>
<Item>ПараметрыДорожек</Item>
<Type>ViewStatusRepresentation</Type>
</AdditionSource>
<HorizontalLocation>Left</HorizontalLocation>
<ContextMenu name="ПараметрыДорожекСостояниеПросмотраКонтекстноеМеню" id="171"/>
<ExtendedTooltip name="ПараметрыДорожекСостояниеПросмотраРасширеннаяПодсказка" id="172"/>
</ViewStatusAddition>
<SearchControlAddition name="ПараметрыДорожекУправлениеПоиском" id="173">
<AdditionSource>
<Item>ПараметрыДорожек</Item>
<Type>SearchControl</Type>
</AdditionSource>
<ContextMenu name="ПараметрыДорожекУправлениеПоискомКонтекстноеМеню" id="174"/>
<ExtendedTooltip name="ПараметрыДорожекУправлениеПоискомРасширеннаяПодсказка" id="175"/>
</SearchControlAddition>
<ChildItems>
<InputField name="ПараметрыДорожекНомерДорожки" id="176">
<DataPath>ПараметрыДорожек.НомерДорожки</DataPath>
<ReadOnly>true</ReadOnly>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<ContextMenu name="ПараметрыДорожекНомерДорожкиКонтекстноеМеню" id="177"/>
<ExtendedTooltip name="ПараметрыДорожекНомерДорожкиРасширеннаяПодсказка" id="178"/>
</InputField>
<InputField name="ПараметрыДорожекПрефикс" id="179">
<DataPath>ПараметрыДорожек.Префикс</DataPath>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<HorizontalStretch>true</HorizontalStretch>
<ClearButton>true</ClearButton>
<ListChoiceMode>true</ListChoiceMode>
<ChooseType>false</ChooseType>
<ContextMenu name="ПараметрыДорожекПрефиксКонтекстноеМеню" id="180"/>
<ExtendedTooltip name="ПараметрыДорожекПрефиксРасширеннаяПодсказка" id="181"/>
</InputField>
<InputField name="ПараметрыДорожекСуффикс" id="182">
<DataPath>ПараметрыДорожек.Суффикс</DataPath>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<HorizontalStretch>true</HorizontalStretch>
<ClearButton>true</ClearButton>
<ListChoiceMode>true</ListChoiceMode>
<ChooseType>false</ChooseType>
<ContextMenu name="ПараметрыДорожекСуффиксКонтекстноеМеню" id="183"/>
<ExtendedTooltip name="ПараметрыДорожекСуффиксРасширеннаяПодсказка" id="184"/>
</InputField>
<CheckBoxField name="ПараметрыДорожекИспользовать" id="185">
<DataPath>ПараметрыДорожек.Использовать</DataPath>
<TitleLocation>None</TitleLocation>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<ContextMenu name="ПараметрыДорожекИспользоватьКонтекстноеМеню" id="186"/>
<ExtendedTooltip name="ПараметрыДорожекИспользоватьРасширеннаяПодсказка" id="187"/>
</CheckBoxField>
</ChildItems>
</Table>
</ChildItems>
</UsualGroup>
</ChildItems>
<Attributes>
<Attribute name="ДрайверУстановлен" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Драйвер</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="ВерсияДрайвера" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Версия</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="Идентификатор" id="11">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Идентификатор</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>cfg:CatalogRef.ПодключаемоеОборудование</v8:Type>
</Type>
</Attribute>
<Attribute name="НаименованиеДрайвера" id="3">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование драйвера</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="ОписаниеДрайвера" id="4">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Описание драйвера</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="URLЗагрузкиДрайвера" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Адрес для загрузки драйвера</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="ЗначениеПараметров" id="7">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Значение параметров</v8:content>
</v8:item>
</Title>
<Type/>
</Attribute>
<Attribute name="ДемонстрационныйРежим" id="6">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Демонстрационный режим</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="ИнтеграционныйКомпонент" id="10">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Интеграционный компонент</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ОсновнойДрайверУстановлен" id="12">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Основной драйвер установлен</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="РевизияИнтерфейса" id="13">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Ревизия интерфейса</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>10</v8:Digits>
<v8:FractionDigits>0</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
</Type>
</Attribute>
<Attribute name="НастройкаПараметров" id="14">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Настройка параметров</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>v8:ValueListType</v8:Type>
</Type>
<Settings xsi:type="v8:TypeDescription"/>
</Attribute>
<Attribute name="ДрайверОборудования" id="15">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Драйвер оборудования</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>cfg:CatalogRef.ДрайверыОборудования</v8:Type>
</Type>
</Attribute>
<Attribute name="ПоставляетсяДистрибутивом" id="16">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Поставляется дистрибутивом</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ТребуетсяПереустановка" id="17">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Требуется переустановка</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ВерсияДрайвераВМакете" id="18">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Версия драйвера в макете</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="ТекущееРабочееМесто" id="19">
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ПараметрыДорожек" id="20">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Параметры дорожек</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>v8:ValueTable</v8:Type>
</Type>
<Columns>
<Column name="НомерДорожки" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>№ дорожки</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>1</v8:Digits>
<v8:FractionDigits>0</v8:FractionDigits>
<v8:AllowedSign>Nonnegative</v8:AllowedSign>
</v8:NumberQualifiers>
</Type>
</Column>
<Column name="Префикс" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Префикс</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>5</v8:Digits>
<v8:FractionDigits>0</v8:FractionDigits>
<v8:AllowedSign>Nonnegative</v8:AllowedSign>
</v8:NumberQualifiers>
</Type>
</Column>
<Column name="Суффикс" id="3">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Суффикс</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>5</v8:Digits>
<v8:FractionDigits>0</v8:FractionDigits>
<v8:AllowedSign>Nonnegative</v8:AllowedSign>
</v8:NumberQualifiers>
</Type>
</Column>
<Column name="Использовать" id="4">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Использовать</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Column>
</Columns>
</Attribute>
<Attribute name="СчитывательМагнитныхКарт" id="21">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Считыватель магнитных карт</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="Установлен" id="22">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Установлен</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ПараметрыДрайвера" id="23">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Параметры драйвера</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="ДополнительныеДействия" id="24">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дополнительные действия</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="ДанныеУстройства" id="25">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Данные устройства</v8:content>
</v8:item>
</Title>
<Type/>
</Attribute>
<Attribute name="КоличествоПодключенных" id="26">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Количество подключенных</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>10</v8:Digits>
<v8:FractionDigits>0</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
</Type>
</Attribute>
<Attribute name="ИнформацияОбОкружении" id="8">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Информация об окружении</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="АвтоНастройкаОборудования" id="9">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Авто настройка оборудования</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
</Attributes>
<Commands>
<Command name="ЗаписатьИЗакрыть" id="1">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="ТестПодключения" id="3">
<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>
<ModifiesSavedData>true</ModifiesSavedData>
<CurrentRowUse>DontUse</CurrentRowUse>
</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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="АвтонастройкаУстройства" id="2">
<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>
<ModifiesSavedData>true</ModifiesSavedData>
</Command>
<Command name="ОчиститьПараметры" id="5">
<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>

View File

@ -0,0 +1,672 @@

#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// Пропускаем инициализацию, чтобы гарантировать получение формы при передаче параметра "АвтоТест".
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
Параметры.Свойство("Идентификатор", Идентификатор);
КодЯзыка = ?(Параметры.Свойство("КодЯзыка"), Параметры.КодЯзыка, "");
ДанныеУстройстваСтруктура = МенеджерОборудования.ДанныеУстройства(Идентификатор, КодЯзыка); // Структура
Если ДанныеУстройстваСтруктура = Неопределено Тогда
Отказ = Истина;
ОбщегоНазначенияБПО.СообщитьПользователю(НСтр("ru = 'Не удалось получить данные устройства.'"));
Возврат;
КонецЕсли;
ДрайверОборудования = ДанныеУстройстваСтруктура.ДрайверОборудования;
ЗначениеПараметров = ДанныеУстройстваСтруктура.Параметры;
ДанныеУстройства = ДанныеУстройстваСтруктура;
Если Не ЗначениеЗаполнено(ЗначениеПараметров) Тогда
ЗначениеПараметров = Новый Структура();
КонецЕсли;
Заголовок = НСтр("ru='Оборудование:'") + Символы.НПП + Строка(Идентификатор);
ДрайверОборудованияТипОборудования = ОбщегоНазначенияБПО.ЗначениеРеквизитаОбъекта(ДрайверОборудования, "ТипОборудования");
СчитывательМагнитныхКарт = ДрайверОборудованияТипОборудования = Перечисления.ТипыПодключаемогоОборудования.СчитывательМагнитныхКарт;
Если СчитывательМагнитныхКарт Тогда
времПараметрыДорожек = Неопределено;
Если НЕ ЗначениеПараметров.Свойство("ПараметрыДорожек", времПараметрыДорожек) Тогда
времПараметрыДорожек = Новый Массив();
Для Индекс = 1 По 3 Цикл
НоваяСтрока = Новый Структура();
НоваяСтрока.Вставить("НомерДорожки", Индекс);
НоваяСтрока.Вставить("Префикс" , 0);
НоваяСтрока.Вставить("Суффикс" , ?(Индекс = 2, 13, 0));
НоваяСтрока.Вставить("Использовать", ?(Индекс = 2, Истина, Ложь));
времПараметрыДорожек.Добавить(НоваяСтрока);
КонецЦикла;
КонецЕсли;
Для Каждого СтрокаДорожки Из времПараметрыДорожек Цикл
НоваяСтрока = ПараметрыДорожек.Добавить();
НоваяСтрока.НомерДорожки = СтрокаДорожки.НомерДорожки;
НоваяСтрока.Префикс = СтрокаДорожки.Префикс;
НоваяСтрока.Суффикс = СтрокаДорожки.Суффикс;
НоваяСтрока.Использовать = СтрокаДорожки.Использовать;
КонецЦикла;
КонецЕсли;
ИдентификаторРабочееМесто = ОбщегоНазначенияБПО.ЗначениеРеквизитаОбъекта(Идентификатор, "РабочееМесто");
РабочееМестоКлиента = МенеджерОборудованияВызовСервера.РабочееМестоКлиента();
ТекущееРабочееМесто = (РабочееМестоКлиента = ИдентификаторРабочееМесто);
Элементы.ТестУстройства.Видимость = ТекущееРабочееМесто;
Элементы.СтатусКомпоненты.Видимость = ТекущееРабочееМесто;
Элементы.ДополнительныеДействия.Видимость = ТекущееРабочееМесто Или ПустаяСтрока(ИдентификаторРабочееМесто);
Если ОбщегоНазначенияБПО.ЭтоМобильнаяПлатформа() Тогда
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.Версия);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.Статус);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.НаименованиеДрайвера);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.ОписаниеДрайвера);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
ОбновитьИнформациюДрайверОборудования(Истина);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура ЗаписатьИЗакрыть(Команда)
ВремНастройки = ПолучитьНастройки();
Если СчитывательМагнитныхКарт Тогда
НастроеноДорожек = 0;
ДорожкаСПустымСуффиксом = Ложь;
времПараметрыДорожек = Новый Массив();
ПрефиксДрайвера = -1;
СуффиксДрайвера = -1;
Для Индекс = 1 По 3 Цикл
Если ПараметрыДорожек[3 - Индекс].Использовать Тогда
ДорожкаСПустымСуффиксом =
ДорожкаСПустымСуффиксом ИЛИ (ПараметрыДорожек[3 - Индекс].Суффикс = 0);
НастроеноДорожек = НастроеноДорожек + 1;
КонецЕсли;
КонецЦикла;
Если Не ДорожкаСПустымСуффиксом Тогда
Для Индекс = 1 По 3 Цикл
НоваяСтрока = Новый Структура();
НоваяСтрока.Вставить("НомерДорожки", ПараметрыДорожек[Индекс - 1].НомерДорожки);
НоваяСтрока.Вставить("Использовать", ПараметрыДорожек[Индекс - 1].Использовать);
НоваяСтрока.Вставить("Префикс" , ПараметрыДорожек[Индекс - 1].Префикс);
НоваяСтрока.Вставить("Суффикс" , ПараметрыДорожек[Индекс - 1].Суффикс);
времПараметрыДорожек.Добавить(НоваяСтрока);
КонецЦикла;
Для Индекс = 1 По 3 Цикл
Если времПараметрыДорожек[Индекс - 1].Использовать Тогда
ПрефиксДрайвера = времПараметрыДорожек[Индекс - 1].Префикс;
ПрефиксДрайвера = ?(ПрефиксДрайвера = 0, -1, ПрефиксДрайвера);
ВремНастройки.ПараметрыОборудования.Вставить("P_Prefix", ПрефиксДрайвера);
Прервать;
КонецЕсли;
КонецЦикла;
Для Индекс = 1 По 3 Цикл
Если времПараметрыДорожек[3 - Индекс].Использовать Тогда
СуффиксДрайвера = времПараметрыДорожек[3 - Индекс].Суффикс;
СуффиксДрайвера = ?(СуффиксДрайвера = 0, -1, СуффиксДрайвера);
ВремНастройки.ПараметрыОборудования.Вставить("P_Suffix", СуффиксДрайвера);
Прервать;
КонецЕсли;
КонецЦикла;
ВремНастройки.ПараметрыОборудования.Вставить("ПараметрыДорожек", времПараметрыДорожек);
КонецЕсли;
Если ПрефиксДрайвера > 0 И СуффиксДрайвера > 0 И ПрефиксДрайвера = СуффиксДрайвера Тогда
ТекстСообщения = НСтр("ru = 'Префикс первой используемой дорожки совпадает с суффикс последней используемой дорожки'");
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ТекстСообщения);
ИначеЕсли НастроеноДорожек > 0 И Не ДорожкаСПустымСуффиксом Тогда
Закрыть(ВремНастройки);
ИначеЕсли НастроеноДорожек = 0 Тогда
ТекстСообщения = НСтр("ru = 'Необходимо указать использование хотя бы одной дорожки для считывателя'");
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ТекстСообщения);
ИначеЕсли ДорожкаСПустымСуффиксом Тогда
ТекстСообщения = НСтр("ru = 'Для каждой используемой дорожки должен быть указан суффикс'");
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ТекстСообщения);
КонецЕсли;
Иначе
Закрыть(ВремНастройки);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура НачатьЗапускПриложенияЗавершение(Результат, Параметры) Экспорт
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(НСтр("ru='Начата установка основной поставки драйвера.'"));
КонецПроцедуры
&НаКлиенте
Процедура УстановкаДрайвераОсновнаяПоставкаЗавершение(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
Оповещения = Новый ОписаниеОповещения("НачатьЗапускПриложенияЗавершение", ЭтотОбъект);
// АПК:534-выкл URLЗагрузкиДрайвера предоставляется производителем драйвера
НачатьЗапускПриложения(Оповещения, URLЗагрузкиДрайвера, , Ложь);
// АПК:534-вкл
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура УстановитьДрайверЗавершение(РезультатОперации, Параметры) Экспорт
Если РезультатОперации.Результат Тогда
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(НСтр("ru='Установка драйвера завершена.'"));
ОбновитьИнформациюДрайверОборудования(Истина);
Иначе
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(РезультатОперации.ОписаниеОшибки);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура УстановитьДрайвер(Команда)
Если ИнтеграционныйКомпонент Тогда
Текст = НСтр("ru = 'Для перехода на сайт производителя необходимо подключение к Интернету.
|Продолжить выполнение операции?'");
Оповещение = Новый ОписаниеОповещения("УстановкаДрайвераОсновнаяПоставкаЗавершение", ЭтотОбъект);
ПоказатьВопрос(Оповещение, Текст, РежимДиалогаВопрос.ДаНет);
Иначе
ОповещенияУстановитьДрайверЗавершение = Новый ОписаниеОповещения("УстановитьДрайверЗавершение", ЭтотОбъект);
МенеджерОборудованияКлиент.УстановитьДрайверОборудования(ОповещенияУстановитьДрайверЗавершение, ДрайверОборудования);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ТестУстройстваЗавершение(РезультатВыполнения, Параметры) Экспорт
ТолькоПросмотр = Ложь;
КоманднаяПанель.Доступность = Истина;
Если РезультатВыполнения.Результат Тогда
ДополнительноеОписание = РезультатВыполнения.РезультатВыполнения;
ДемонстрационныйРежим = РезультатВыполнения.АктивированДемоРежим;
Элементы.ГруппаДемонстрационныйРежим.Видимость = НЕ ПустаяСтрока(ДемонстрационныйРежим);
ТекстСообщения = НСтр("ru = 'Тест успешно выполнен.'");
Если Не ПустаяСтрока(ДополнительноеОписание) Тогда
ТекстСообщения = ТекстСообщения + Символы.НПП + ДополнительноеОписание;
КонецЕсли
Иначе
ТекстСообщения = СтрШаблон(НСтр("ru = 'Тест не пройден. %1'"), РезультатВыполнения.ОписаниеОшибки);
КонецЕсли;
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ТекстСообщения);
КонецПроцедуры
&НаКлиенте
Процедура ТестПодключения(Команда)
ОчиститьСообщения();
ТолькоПросмотр = Истина;
КоманднаяПанель.Доступность = Ложь;
ДемонстрационныйРежим = "";
ПараметрыУстройства = ПолучитьНастройки().ПараметрыОборудования;
Оповещение = Новый ОписаниеОповещения("ТестУстройстваЗавершение", ЭтотОбъект);
МенеджерОборудованияКлиент.НачатьТестУстройства(Оповещение, Идентификатор, ПараметрыУстройства);
КонецПроцедуры
&НаСервере
Процедура ОчиститьПараметрыНаСервере()
ПараметрыДрайвераРеквизиты = ПолучитьРеквизиты();
Для Каждого Параметр Из ПараметрыДрайвераРеквизиты Цикл
Если Лев(Параметр.Имя, 2) = "P_" Тогда
ЭтотОбъект[Параметр.Имя] = Неопределено;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура АвтонастройкаУстановитьПараметры(ПараметрыПодключения)
ОчиститьПараметрыНаСервере();
ЗаполнитьЗначенияСвойств(ЭтотОбъект, ПараметрыПодключения);
КонецПроцедуры
&НаКлиенте
Процедура АвтонастройкаУстройстваЗавершение(РезультатВыполнения, Параметры) Экспорт
ТолькоПросмотр = Ложь;
КоманднаяПанель.Доступность = Истина;
ТекстСообщения = ?(РезультатВыполнения.Результат, НСтр("ru = 'Операция выполнена успешно.'"), НСтр("ru = 'Операция не выполнена.'"));
Если РезультатВыполнения.Результат Тогда
Если РезультатВыполнения.ПараметрыПодключения.Количество() > 0 Тогда
АвтонастройкаУстановитьПараметры(РезультатВыполнения.ПараметрыПодключения);
Иначе
ТекстСообщения = НСтр("ru = 'Параметры настройки драйвера не определены.'");
КонецЕсли;
КонецЕсли;
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ТекстСообщения);
КонецПроцедуры
&НаКлиенте
Процедура АвтонастройкаУстройства(Команда)
ОчиститьСообщения();
ТолькоПросмотр = Истина;
КоманднаяПанель.Доступность = Ложь;
ДемонстрационныйРежим = "";
ПараметрыУстройства = ПолучитьНастройки().ПараметрыОборудования;
Оповещение = Новый ОписаниеОповещения("АвтонастройкаУстройстваЗавершение", ЭтотОбъект);
МенеджерОборудованияКлиент.НачатьАвтонастройкуУстройства(Оповещение, Идентификатор, ПараметрыУстройства);
КонецПроцедуры
&НаКлиенте
Процедура ДополнительноеДействиеЗавершение(РезультатВыполнения, Параметры) Экспорт
ТекстСообщения = ?(РезультатВыполнения.Результат,
НСтр("ru = 'Операция выполнена успешно.'"),
НСтр("ru = 'Ошибка выполнения операции:'") + РезультатВыполнения.ОписаниеОшибки);
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ТекстСообщения);
ОчиститьНастраиваемыйИнтерфейс();
ОбновитьИнформациюДрайверОборудования(Ложь);
КонецПроцедуры
&НаКлиенте
Процедура ДополнительноеДействие(Команда)
ИмяДействия = Сред(Команда.Имя, 3);
ПараметрыВыполнения = Новый Структура("ИмяДействия", ИмяДействия);
ПараметрыУстройства = ПолучитьНастройки().ПараметрыОборудования;
Оповещение = Новый ОписаниеОповещения("ДополнительноеДействиеЗавершение", ЭтотОбъект);
МенеджерОборудованияКлиент.НачатьВыполнениеДополнительнойКоманды(Оповещение, Идентификатор, ПараметрыУстройства, ПараметрыВыполнения);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаСервере
Функция ПолучитьНастройки()
ПараметрыДрайвераРеквизиты = ПолучитьРеквизиты();
НовыеЗначениеПараметров = Новый Структура;
Для Каждого Параметр Из ПараметрыДрайвераРеквизиты Цикл
Если Лев(Параметр.Имя, 2) = "P_" Тогда
НовыеЗначениеПараметров.Вставить(Параметр.Имя, ЭтотОбъект[Параметр.Имя]);
КонецЕсли;
КонецЦикла;
Результат = Новый Структура;
Результат.Вставить("Идентификатор", Идентификатор);
Результат.Вставить("ПараметрыОборудования", НовыеЗначениеПараметров);
Возврат Результат;
КонецФункции
&НаСервере
Процедура ОчиститьНастраиваемыйИнтерфейс()
Пока Элементы.Страницы.ПодчиненныеЭлементы.Количество() > 0 Цикл
Элементы.Удалить(Элементы.Страницы.ПодчиненныеЭлементы.Получить(0));
КонецЦикла;
КонецПроцедуры
&НаСервере
Процедура ОбновитьНастраиваемыйИнтерфейс(ОписаниеИнтерфейса, ДополнительныеДействия, ПервыйЗапуск)
Суффикс = Ложь;
Префикс = Ложь;
БазоваяГруппа = Неопределено;
Элемент = Неопределено;
ИндексГруппы = 0;
КоличествоСтраниц = 0;
ТекущаяСтраница = Элементы.Добавить("ОсновнаяСтраница", Тип("ГруппаФормы"), Элементы.Страницы);
ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.УстановитьСтроку(ОписаниеИнтерфейса);
ЧтениеXML.ПерейтиКСодержимому();
Если ЧтениеXML.Имя = "Settings" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
Пока ЧтениеXML.Прочитать() Цикл
Если ЧтениеXML.Имя = "Parameter" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
ТолькоЧтение = ?(ВРег(ЧтениеXML.ЗначениеАтрибута("ReadOnly")) = "TRUE", Истина, Ложь)
Или ?(ВРег(ЧтениеXML.ЗначениеАтрибута("ReadOnly")) = "ИСТИНА", Истина, Ложь);
ОригинальноеИмя = ЧтениеXML.ЗначениеАтрибута("Name");
ПараметрИмя = ?(ТолькоЧтение, "R_", "P_") + ОригинальноеИмя;
ПараметрЗаголовок = ЧтениеXML.ЗначениеАтрибута("Caption");
ПараметрТип = ВРег(ЧтениеXML.ЗначениеАтрибута("TypeValue"));
ПараметрТип = ?(НЕ ПустаяСтрока(ПараметрТип), ПараметрТип, "STRING");
ПараметрЗначение = ЧтениеXML.ЗначениеАтрибута("DefaultValue");
ПараметрОписание = ЧтениеXML.ЗначениеАтрибута("Description");
СтрокаФорматирования = ЧтениеXML.ЗначениеАтрибута("FieldFormat");
Если СчитывательМагнитныхКарт Тогда
Суффикс = ВРег(ОригинальноеИмя) = "SUFFIX" Или ?(ВРег(ЧтениеXML.ЗначениеАтрибута("Suffix")) = "TRUE", Истина, Ложь);
Префикс = ВРег(ОригинальноеИмя) = "PREFIX" Или ?(ВРег(ЧтениеXML.ЗначениеАтрибута("Prefix")) = "TRUE", Истина, Ложь);
КонецЕсли;
ПараметрСуществует = Ложь;
ПараметрыДрайвераРеквизиты = ПолучитьРеквизиты();
Для Каждого ПараметрДрайвераРеквизит Из ПараметрыДрайвераРеквизиты Цикл
Если ПараметрДрайвераРеквизит.Имя = ПараметрИмя Тогда
ПараметрСуществует = Истина;
Прервать;
КонецЕсли;
КонецЦикла;
Если Не ПараметрСуществует Тогда
Если ПараметрТип = "NUMBER" Тогда
Реквизит = Новый РеквизитФормы(ПараметрИмя, Новый ОписаниеТипов("Число"), , ПараметрЗаголовок, Истина);
ИначеЕсли ПараметрТип = "BOOLEAN" Тогда
Реквизит = Новый РеквизитФормы(ПараметрИмя, Новый ОписаниеТипов("Булево"), , ПараметрЗаголовок, Истина);
Иначе
Реквизит = Новый РеквизитФормы(ПараметрИмя, Новый ОписаниеТипов("Строка"), , ПараметрЗаголовок, Истина);
КонецЕсли;
// Добавляем новый реквизит в форму.
ДобавляемыеРеквизиты = Новый Массив;
ДобавляемыеРеквизиты.Добавить(Реквизит);
ИзменитьРеквизиты(ДобавляемыеРеквизиты);
КонецЕсли;
Если Суффикс Тогда
Элемент = Элементы.ПараметрыДорожекСуффикс
ИначеЕсли Префикс Тогда
Элемент = Элементы.ПараметрыДорожекПрефикс;
ИначеЕсли Элементы.Найти(ПараметрИмя) = Неопределено Тогда
// Если не было создано не одной группы.
Если БазоваяГруппа = Неопределено Тогда
БазоваяГруппа = Элементы.Добавить("БазоваяГруппа" + КоличествоСтраниц, Тип("ГруппаФормы"), ТекущаяСтраница);
БазоваяГруппа.Вид = ВидГруппыФормы.ОбычнаяГруппа;
БазоваяГруппа.Отображение = Элементы.ДрайверОборудования.Отображение;
БазоваяГруппа.РастягиватьПоГоризонтали = Истина;
БазоваяГруппа.Заголовок = НСтр("ru = 'Параметры'");
БазоваяГруппа.Группировка = Элементы.ДрайверОборудования.Группировка;
КонецЕсли;
// Добавляем новое поле ввода на форму.
Элемент = Элементы.Добавить(ПараметрИмя, Тип("ПолеФормы"), БазоваяГруппа);
Если ПараметрТип = "BOOLEAN" Тогда
Элемент.Вид = ВидПоляФормы.ПолеФлажка
Иначе
Элемент.Вид = ВидПоляФормы.ПолеВвода;
Элемент.АвтоМаксимальнаяШирина = Ложь;
Элемент.РастягиватьПоГоризонтали = Истина;
Элемент.Формат = СтрокаФорматирования;
Элемент.ФорматРедактирования = СтрокаФорматирования;
Если ОбщегоНазначенияБПО.ЭтоМобильнаяПлатформа() Тогда
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элемент);
КонецЕсли;
КонецЕсли;
Элемент.ПутьКДанным = ПараметрИмя;
Элемент.Подсказка = ПараметрОписание;
Элемент.ТолькоПросмотр = ТолькоЧтение;
КонецЕсли;
ХранимоеЗначение = Неопределено;
Если ЗначениеПараметров.Свойство(ПараметрИмя, ХранимоеЗначение) Тогда
ПараметрЗначение = ХранимоеЗначение
Иначе
Если НЕ ПустаяСтрока(ПараметрЗначение) Тогда
Если ПараметрТип = "BOOLEAN" Тогда
ПараметрЗначение = ?(ВРег(ПараметрЗначение) = "TRUE", Истина, Ложь) Или ?(ВРег(ПараметрЗначение) = "ИСТИНА", Истина, Ложь);
ИначеЕсли ПараметрТип = "STRING" Тогда
ПараметрЗначение = Строка(ПараметрЗначение);
КонецЕсли;
КонецЕсли;
КонецЕсли;
ЭтотОбъект[ПараметрИмя] = ПараметрЗначение;
КонецЕсли;
Если ЧтениеXML.Имя = "ChoiceList" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
Если НЕ (Элемент = Неопределено) И НЕ (Элемент.Вид = ВидПоляФормы.ПолеФлажка) Тогда
Элемент.РежимВыбораИзСписка = Истина;
Элемент.ВысотаСпискаВыбора = 10;
Элемент.РедактированиеТекста = Ложь;
Если Суффикс Или Префикс Тогда
Элемент.СписокВыбора.Добавить(0, "<NONE>");
КонецЕсли;
КонецЕсли;
Пока ЧтениеXML.Прочитать() И НЕ (ЧтениеXML.Имя = "ChoiceList") Цикл
Если ЧтениеXML.Имя = "Item" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
ЗначениеАтрибута = ЧтениеXML.ЗначениеАтрибута("Value");
Если ЧтениеXML.Прочитать() Тогда
ПредставлениеАтрибута = ЧтениеXML.Значение;
КонецЕсли;
Если ПустаяСтрока(ЗначениеАтрибута) Тогда
ЗначениеАтрибута = ПредставлениеАтрибута;
КонецЕсли;
Если Суффикс Или Префикс Тогда
Если Число(ЗначениеАтрибута) > 0 Тогда
Элемент.СписокВыбора.Добавить(Число(ЗначениеАтрибута), ПредставлениеАтрибута);
КонецЕсли;
ИначеЕсли ПараметрТип = "NUMBER" Тогда
Элемент.СписокВыбора.Добавить(Число(ЗначениеАтрибута), ПредставлениеАтрибута);
Иначе
Элемент.СписокВыбора.Добавить(ЗначениеАтрибута, ПредставлениеАтрибута)
КонецЕсли;
Если ОбщегоНазначенияБПО.ЭтоМобильнаяПлатформа() Тогда
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элемент);
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецЕсли;
Если ЧтениеXML.Имя = "Page" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
ЗаголовокСтраницы = ЧтениеXML.ЗначениеАтрибута("Caption");
ЗаголовокСтраницы = ?(ПустаяСтрока(ЗаголовокСтраницы), НСтр("ru = 'Параметры'"), ЗаголовокСтраницы);
КоличествоСтраниц = КоличествоСтраниц + 1;
Если КоличествоСтраниц > 1 Тогда
Элементы.Страницы.ОтображениеСтраниц = ОтображениеСтраницФормы.ЗакладкиСверху;
ТекущаяСтраница = Элементы.Добавить("Страница" + КоличествоСтраниц, Тип("ГруппаФормы"), Элементы.Страницы);
БазоваяГруппа = Неопределено;
КонецЕсли;
ТекущаяСтраница.Заголовок = ЗаголовокСтраницы;
КонецЕсли;
Если ЧтениеXML.Имя = "Group" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
ЗаголовокГруппы = ЧтениеXML.ЗначениеАтрибута("Caption");
ЗаголовокГруппы = ?(ПустаяСтрока(ЗаголовокГруппы), НСтр("ru = 'Параметры'"), ЗаголовокГруппы);
БазоваяГруппа = Элементы.Добавить("Группа" + ИндексГруппы, Тип("ГруппаФормы"), ТекущаяСтраница);
БазоваяГруппа.Вид = ВидГруппыФормы.ОбычнаяГруппа;
БазоваяГруппа.Отображение = Элементы.ДрайверОборудования.Отображение;
БазоваяГруппа.РастягиватьПоГоризонтали = Истина;
БазоваяГруппа.Группировка = Элементы.ДрайверОборудования.Группировка;
БазоваяГруппа.Заголовок = ЗаголовокГруппы;
ИндексГруппы = ИндексГруппы + 1;
КонецЕсли;
КонецЦикла;
КонецЕсли;
ЧтениеXML.Закрыть();
Если ПервыйЗапуск И НЕ ПустаяСтрока(ДополнительныеДействия) Тогда
ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.УстановитьСтроку(ДополнительныеДействия);
ЧтениеXML.ПерейтиКСодержимому();
Если ЧтениеXML.Имя = "Actions" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
Пока ЧтениеXML.Прочитать() Цикл
Если ЧтениеXML.Имя = "Action" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
ДействиеИмя = "M_" + ЧтениеXML.ЗначениеАтрибута("Name");
ДействиеЗаголовок = ЧтениеXML.ЗначениеАтрибута("Caption");
Команда = Команды.Добавить("A_" + ЧтениеXML.ЗначениеАтрибута("Name"));
Команда.Заголовок = ДействиеЗаголовок;
Команда.Действие = "ДополнительноеДействие";
ПунктМеню = Элементы.Добавить(ДействиеИмя, Тип("КнопкаФормы"), Элементы.ДополнительныеДействия);
ПунктМеню.Вид = ВидКнопкиФормы.КнопкаКоманднойПанели;
ПунктМеню.Заголовок = ДействиеЗаголовок;
ПунктМеню.ИмяКоманды = "A_" + ЧтениеXML.ЗначениеАтрибута("Name");
КонецЕсли;
КонецЦикла;
КонецЕсли;
ЧтениеXML.Закрыть();
КонецЕсли;
Элементы.ПрефиксыИСуффиксыДорожек.Видимость = СчитывательМагнитныхКарт;
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьИнтерфейсФормы(ПервыйЗапуск, ПараметрыОперации)
Если ПараметрыОперации.Результат Тогда
Элементы.СтатусКомпоненты.ТекущаяСтраница = Элементы.КомпонентаУстановлена;
ДрайверГотовКРаботе = Ложь;
Элементы.ДрайверОсновнаяПоставка.Видимость = Ложь;
ЗаполнитьЗначенияСвойств(ЭтаФорма, ПараметрыОперации.ОписаниеДрайвера);
Элементы.ДекорацияИнформацияОбОкружении.Видимость = Не ПустаяСтрока(ИнформацияОбОкружении);
Если КоличествоПодключенных > 0 Тогда
Элементы.СтатусКомпоненты.ТекущаяСтраница = Элементы.УстройствоПодключено;
ИначеЕсли ИнтеграционныйКомпонент Тогда
Если НЕ ОсновнойДрайверУстановлен Тогда
Элементы.СтатусКомпоненты.ТекущаяСтраница = Элементы.ДрайверИнтеграционныйКомпонент;
ДрайверУстановлен = НСтр("ru='Установлен интеграционный компонент'");
ВерсияДрайвера = НСтр("ru='Не определена'");
Элементы.ДрайверПредупреждение.Видимость = НЕ ПустаяСтрока(НаименованиеДрайвера);
Элементы.ДрайверПредупреждение.Заголовок = СтрШаблон(Элементы.ДрайверПредупреждение.Заголовок, НаименованиеДрайвера);
Элементы.ПерейтиНаСайтПроизводителя.Видимость = НЕ ПустаяСтрока(URLЗагрузкиДрайвера);
Иначе
ДрайверГотовКРаботе = Истина;
ДрайверУстановлен = НСтр("ru='Установлен'");
Элементы.ДрайверОсновнаяПоставка.Видимость = Истина;
Элементы.ОсновнаяПоставкаУстановлена.Заголовок = СтрШаблон(
НСтр("ru = 'Установлена основная поставка драйвера. Версия %1.'"),
ПараметрыОперации.ОписаниеДрайвера.ВерсияДрайвера);
ВерсияДрайвера = ПараметрыОперации.ОписаниеДрайвера.ВерсияИнтеграционногоКомпонента;
КонецЕсли
Иначе
ДрайверУстановлен = НСтр("ru='Установлен'");
ДрайверГотовКРаботе = Истина;
КонецЕсли;
Если ДрайверГотовКРаботе И НЕ ПустаяСтрока(ПараметрыДрайвера) Тогда
ОбновитьНастраиваемыйИнтерфейс(ПараметрыДрайвера, ДополнительныеДействия, ПервыйЗапуск);
КонецЕсли;
Иначе
Элементы.СтатусКомпоненты.ТекущаяСтраница = Элементы.КомпонентаНеУстановлена;
ДрайверГотовКРаботе = Ложь;
ДрайверУстановлен = НСтр("ru='Не установлен'");
ВерсияДрайвера = НСтр("ru='Не определена'");
Если Не ПустаяСтрока(ПараметрыОперации.ОписаниеОшибки) Тогда
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ПараметрыОперации.ОписаниеОшибки);
КонецЕсли;
КонецЕсли;
Элементы.ТестУстройства.Видимость = ДрайверГотовКРаботе;
Элементы.АвтонастройкаУстройства.Видимость = ДрайверГотовКРаботе И АвтоНастройкаОборудования;
Элементы.ЗаписатьИЗакрыть.Видимость = ДрайверГотовКРаботе;
Элементы.ДрайверОборудования.Видимость = ДрайверГотовКРаботе;
Элементы.Функции.Видимость = ДрайверГотовКРаботе;
Элементы.ОписаниеДрайвера.Видимость = ДрайверГотовКРаботе И НЕ ПустаяСтрока(ОписаниеДрайвера);
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьИнформациюДрайверОборудования_Завершение(РезультатВыполнения, Параметры) Экспорт
Если Не ТипЗнч(РезультатВыполнения) = Тип("Структура") Тогда
Возврат;
КонецЕсли;
ПервыйЗапуск = ?(Параметры.Свойство("ПервыйЗапуск"), Параметры.ПервыйЗапуск, Истина);
ОбновитьИнтерфейсФормы(ПервыйЗапуск, РезультатВыполнения);
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьИнформациюДрайверОборудования(ПервыйЗапуск)
ПараметрыКоманды = Новый Структура("ПервыйЗапуск", ПервыйЗапуск);
Оповещение = Новый ОписаниеОповещения("ОбновитьИнформациюДрайверОборудования_Завершение", ЭтотОбъект, ПараметрыКоманды);
МенеджерОборудованияКлиент.НачатьПолучениеОписанияОборудования(Оповещение, , ДанныеУстройства);
КонецПроцедуры
&НаКлиенте
Процедура ДекорацияИнформацияОбОкруженииНажатие(Элемент)
ПредупреждениеАсинх(ИнформацияОбОкружении, , НСтр("ru = 'Информация об окружении'"));
КонецПроцедуры
&НаКлиенте
Процедура ОчиститьПараметры(Команда)
ОчиститьПараметрыНаСервере();
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<Help xmlns="http://v8.1c.ru/8.3/xcf/extrnprops" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.21">
<Page>ru</Page>
</Help>

View File

@ -0,0 +1,3 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html;charset=utf-8" http-equiv="content-type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.10570.1001"></meta></head><body>
<h1>Форма настройки драйвера</h1>
<p>Форма предназначена для настройки параметров работы оборудования, подключаемых при помощи драйвера разработанного по технологии "1C:Совместимо! Система программ 1С:Предприятие". Форма позволяет настраивать необходимые параметры устройства.<br><br>После изменения значений параметров следует нажать кнопку "Записать и закрыть" для того, чтобы сохранить внесённые изменения, или кнопку "Отмена" для того, чтобы отказаться от их сохранения.</p></body></html>

View File

@ -0,0 +1,22 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Form uuid="58db0e29-2228-4e7d-8621-04e094535433">
<Properties>
<Name>ФормаСписка</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма списка</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
</Properties>
</Form>
</MetaDataObject>

View File

@ -0,0 +1,535 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<WindowOpeningMode>DontBlock</WindowOpeningMode>
<Group>Vertical</Group>
<CommandSet>
<ExcludedCommand>Abort</ExcludedCommand>
<ExcludedCommand>Cancel</ExcludedCommand>
<ExcludedCommand>CancelSearch</ExcludedCommand>
<ExcludedCommand>Close</ExcludedCommand>
<ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>Delete</ExcludedCommand>
<ExcludedCommand>DynamicListStandardSettings</ExcludedCommand>
<ExcludedCommand>Find</ExcludedCommand>
<ExcludedCommand>FindByCurrentValue</ExcludedCommand>
<ExcludedCommand>Help</ExcludedCommand>
<ExcludedCommand>Ignore</ExcludedCommand>
<ExcludedCommand>ListSettings</ExcludedCommand>
<ExcludedCommand>LoadDynamicListSettings</ExcludedCommand>
<ExcludedCommand>No</ExcludedCommand>
<ExcludedCommand>OK</ExcludedCommand>
<ExcludedCommand>Refresh</ExcludedCommand>
<ExcludedCommand>RestoreValues</ExcludedCommand>
<ExcludedCommand>Retry</ExcludedCommand>
<ExcludedCommand>SaveDynamicListSettings</ExcludedCommand>
<ExcludedCommand>SaveValues</ExcludedCommand>
<ExcludedCommand>Yes</ExcludedCommand>
</CommandSet>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<Autofill>false</Autofill>
</AutoCommandBar>
<Events>
<Event name="NotificationProcessing">ОбработкаОповещения</Event>
<Event name="OnOpen">ПриОткрытии</Event>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
</Events>
<ChildItems>
<UsualGroup name="Управление" id="54">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Управление</v8:content>
</v8:item>
</Title>
<Group>Horizontal</Group>
<Behavior>Usual</Behavior>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="УправлениеРасширеннаяПодсказка" id="55"/>
<ChildItems>
<RadioButtonField name="ТипПодключенияОборудования" id="66">
<DataPath>ТипПодключенияОборудования</DataPath>
<TitleLocation>None</TitleLocation>
<RadioButtonType>Tumbler</RadioButtonType>
<ChoiceList>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="FormChoiceListDesTimeValue">
<Presentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Локальное подключение</v8:content>
</v8:item>
</Presentation>
<Value xsi:type="xr:DesignTimeRef">Enum.ТипыПодключенияОборудования.EnumValue.ЛокальноеПодключение</Value>
</xr:Value>
</xr:Item>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="FormChoiceListDesTimeValue">
<Presentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>В общем доступе</v8:content>
</v8:item>
</Presentation>
<Value xsi:type="xr:DesignTimeRef">Enum.ТипыПодключенияОборудования.EnumValue.ОбщийДоступ</Value>
</xr:Value>
</xr:Item>
</ChoiceList>
<ContextMenu name="ТипПодключенияОборудованияКонтекстноеМеню" id="67"/>
<ExtendedTooltip name="ТипПодключенияОборудованияРасширеннаяПодсказка" id="68"/>
<Events>
<Event name="OnChange">ТипПодключенияОборудованияПриИзменении</Event>
</Events>
</RadioButtonField>
<InputField name="ТипОборудования" id="76">
<DataPath>ТипОборудования</DataPath>
<Width>18</Width>
<AutoMaxWidth>false</AutoMaxWidth>
<MaxWidth>18</MaxWidth>
<ChoiceButton>false</ChoiceButton>
<ListChoiceMode>true</ListChoiceMode>
<ChoiceList>
<xr:Item>
<xr:Presentation/>
<xr:CheckState>0</xr:CheckState>
<xr:Value xsi:type="FormChoiceListDesTimeValue">
<Presentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>&lt;ВСЕ&gt;</v8:content>
</v8:item>
</Presentation>
<Value xsi:type="xr:DesignTimeRef">Enum.ТипыПодключаемогоОборудования.EmptyRef</Value>
</xr:Value>
</xr:Item>
</ChoiceList>
<ContextMenu name="ТипОборудованияКонтекстноеМеню" id="77"/>
<ExtendedTooltip name="ТипОборудованияРасширеннаяПодсказка" id="78"/>
<Events>
<Event name="OnChange">ТипОборудованияПриИзменении</Event>
</Events>
</InputField>
<InputField name="РабочееМесто" id="82">
<DataPath>РабочееМесто</DataPath>
<Width>18</Width>
<MaxWidth>18</MaxWidth>
<HorizontalStretch>true</HorizontalStretch>
<ListChoiceMode>true</ListChoiceMode>
<ContextMenu name="РабочееМестоКонтекстноеМеню" id="83"/>
<ExtendedTooltip name="РабочееМестоРасширеннаяПодсказка" id="84"/>
<Events>
<Event name="OnChange">РабочееМестоПриИзменении</Event>
</Events>
</InputField>
<CommandBar name="УправлениеРабочимиМестами" id="99" DisplayImportance="Low">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Управление рабочими местами</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="УправлениеРабочимиМестамиРасширеннаяПодсказка" id="100"/>
<ChildItems>
<Button name="СписокУстройствВыборРабочегоМеста" id="101">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.ВыборРабочегоМеста</CommandName>
<LocationInCommandBar>InAdditionalSubmenu</LocationInCommandBar>
<ExtendedTooltip name="СписокУстройствВыборРабочегоМестаРасширеннаяПодсказка" id="102"/>
</Button>
<Button name="СписокУстройствСписокРабочихМест" id="103">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.СписокРабочихМест</CommandName>
<LocationInCommandBar>InAdditionalSubmenu</LocationInCommandBar>
<ExtendedTooltip name="СписокУстройствСписокРабочихМестРасширеннаяПодсказка" id="104"/>
</Button>
<ButtonGroup name="ДрайвераОборудования" id="105">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Драйвера оборудования</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="ДрайвераОборудованияРасширеннаяПодсказка" id="106"/>
<ChildItems>
<Button name="СписокУстройствДрайвераОборудования" id="74">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.ДрайверыОборудования</CommandName>
<LocationInCommandBar>InAdditionalSubmenu</LocationInCommandBar>
<ExtendedTooltip name="СписокУстройствДрайвераОборудованияРасширеннаяПодсказка" id="75"/>
</Button>
</ChildItems>
</ButtonGroup>
<ButtonGroup name="ПодключаемыеКоманды" id="120">
<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>
<ExtendedTooltip name="ПодключаемыеКомандыРасширеннаяПодсказка" id="121"/>
</ButtonGroup>
<ButtonGroup name="КомандыФормы" id="107">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Команды формы</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="КомандыФормыРасширеннаяПодсказка" id="108"/>
<ChildItems>
<Button name="ВывестиСписок" id="109">
<Type>CommandBarButton</Type>
<CommandName>Form.StandardCommand.OutputList</CommandName>
<ExtendedTooltip name="ВывестиСписокРасширеннаяПодсказка" id="110"/>
</Button>
<Button name="ИзменитьФорму" id="111">
<Type>CommandBarButton</Type>
<CommandName>Form.StandardCommand.CustomizeForm</CommandName>
<ExtendedTooltip name="ИзменитьФормуРасширеннаяПодсказка" id="112"/>
</Button>
</ChildItems>
</ButtonGroup>
</ChildItems>
</CommandBar>
</ChildItems>
</UsualGroup>
<Table name="СписокУстройств" id="3">
<Representation>List</Representation>
<DefaultItem>true</DefaultItem>
<ChangeRowOrder>false</ChangeRowOrder>
<SelectionMode>SingleRow</SelectionMode>
<RowSelectionMode>Cell</RowSelectionMode>
<InitialTreeView>ExpandTopLevel</InitialTreeView>
<EnableStartDrag>true</EnableStartDrag>
<FileDragMode>AsFile</FileDragMode>
<DataPath>СписокУстройств</DataPath>
<RowPictureDataPath>СписокУстройств.DefaultPicture</RowPictureDataPath>
<CommandSet>
<ExcludedCommand>CancelSearch</ExcludedCommand>
<ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>CopyToClipboard</ExcludedCommand>
<ExcludedCommand>Delete</ExcludedCommand>
<ExcludedCommand>DynamicListStandardSettings</ExcludedCommand>
<ExcludedCommand>Find</ExcludedCommand>
<ExcludedCommand>FindByCurrentValue</ExcludedCommand>
<ExcludedCommand>ListSettings</ExcludedCommand>
<ExcludedCommand>LoadDynamicListSettings</ExcludedCommand>
<ExcludedCommand>OutputList</ExcludedCommand>
<ExcludedCommand>Refresh</ExcludedCommand>
<ExcludedCommand>SaveDynamicListSettings</ExcludedCommand>
<ExcludedCommand>SearchHistory</ExcludedCommand>
</CommandSet>
<SearchStringLocation>None</SearchStringLocation>
<AutoRefresh>true</AutoRefresh>
<AutoRefreshPeriod>60</AutoRefreshPeriod>
<Period>
<v8:variant xsi:type="v8:StandardPeriodVariant">Custom</v8:variant>
<v8:startDate>0001-01-01T00:00:00</v8:startDate>
<v8:endDate>0001-01-01T00:00:00</v8:endDate>
</Period>
<ChoiceFoldersAndItems>FoldersAndItems</ChoiceFoldersAndItems>
<RestoreCurrentRow>false</RestoreCurrentRow>
<TopLevelParent xsi:nil="true"/>
<ShowRoot>true</ShowRoot>
<AllowRootChoice>false</AllowRootChoice>
<UpdateOnDataChange>Auto</UpdateOnDataChange>
<AllowGettingCurrentRowURL>true</AllowGettingCurrentRowURL>
<ContextMenu name="СписокУстройствКонтекстноеМеню" id="4"/>
<AutoCommandBar name="СписокУстройствКоманднаяПанель" id="5">
<Autofill>false</Autofill>
<ChildItems>
<Button name="ФормаПодключитьНовое" id="72">
<Type>CommandBarButton</Type>
<CommandName>Form.StandardCommand.Create</CommandName>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Подключить новое</v8:content>
</v8:item>
</Title>
<LocationInCommandBar>InCommandBarAndInAdditionalSubmenu</LocationInCommandBar>
<ExtendedTooltip name="ФормаПодключитьНовоеРасширеннаяПодсказка" id="73"/>
</Button>
<Button name="СписокУстройствНастроитьОборудование" id="94">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.НастроитьОборудование</CommandName>
<ExtendedTooltip name="СписокУстройствНастроитьОборудованиеРасширеннаяПодсказка" id="95"/>
</Button>
<Button name="СписокУстройствСообщениеВТехническуюПоддержку" id="118">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.СообщениеВТехническуюПоддержку</CommandName>
<ExtendedTooltip name="СписокУстройствСообщениеВТехническуюПоддержкуРасширеннаяПодсказка" id="119"/>
</Button>
</ChildItems>
</AutoCommandBar>
<ExtendedTooltip name="СписокУстройствРасширеннаяПодсказка" id="6"/>
<SearchStringAddition name="СписокУстройствСтрокаПоиска" id="7">
<Enabled>false</Enabled>
<AdditionSource>
<Item>СписокУстройств</Item>
<Type>SearchStringRepresentation</Type>
</AdditionSource>
<ContextMenu name="СписокУстройствСтрокаПоискаКонтекстноеМеню" id="10"/>
<ExtendedTooltip name="СписокУстройствСтрокаПоискаРасширеннаяПодсказка" id="11"/>
</SearchStringAddition>
<ViewStatusAddition name="СписокУстройствСостояниеПросмотра" id="12">
<Enabled>false</Enabled>
<AdditionSource>
<Item>СписокУстройств</Item>
<Type>ViewStatusRepresentation</Type>
</AdditionSource>
<HorizontalLocation>Left</HorizontalLocation>
<ContextMenu name="СписокУстройствСостояниеПросмотраКонтекстноеМеню" id="15"/>
<ExtendedTooltip name="СписокУстройствСостояниеПросмотраРасширеннаяПодсказка" id="16"/>
</ViewStatusAddition>
<SearchControlAddition name="СписокУстройствУправлениеПоиском" id="17">
<Enabled>false</Enabled>
<AdditionSource>
<Item>СписокУстройств</Item>
<Type>SearchControl</Type>
</AdditionSource>
<ContextMenu name="СписокУстройствУправлениеПоискомКонтекстноеМеню" id="20"/>
<ExtendedTooltip name="СписокУстройствУправлениеПоискомРасширеннаяПодсказка" id="21"/>
</SearchControlAddition>
<Events>
<Event name="OnActivateRow">СписокУстройствПриАктивизацииСтроки</Event>
<Event name="OnChange">СписокУстройствПриИзменении</Event>
</Events>
<ChildItems>
<LabelField name="Ссылка" id="113">
<DataPath>СписокУстройств.Ref</DataPath>
<UserVisible>
<xr:Common>false</xr:Common>
</UserVisible>
<ContextMenu name="СсылкаКонтекстноеМеню" id="114"/>
<ExtendedTooltip name="СсылкаРасширеннаяПодсказка" id="115"/>
</LabelField>
<LabelField name="СписокУстройствНаименование" id="38">
<DataPath>СписокУстройств.Description</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование</v8:content>
</v8:item>
</Title>
<AutoCellHeight>true</AutoCellHeight>
<ContextMenu name="СписокУстройствНаименованиеКонтекстноеМеню" id="39"/>
<ExtendedTooltip name="СписокУстройствНаименованиеРасширеннаяПодсказка" id="40"/>
</LabelField>
<LabelField name="СписокУстройствДрайверОборудования" id="96">
<DataPath>СписокУстройств.ДрайверОборудования</DataPath>
<ContextMenu name="СписокУстройствДрайверОборудованияКонтекстноеМеню" id="97"/>
<ExtendedTooltip name="СписокУстройствДрайверОборудованияРасширеннаяПодсказка" id="98"/>
</LabelField>
<LabelField name="СписокУстройствРабочееМесто" id="46">
<DataPath>СписокУстройств.РабочееМесто</DataPath>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="СписокУстройствРабочееМестоКонтекстноеМеню" id="47"/>
<ExtendedTooltip name="СписокУстройствРабочееМестоРасширеннаяПодсказка" id="48"/>
</LabelField>
</ChildItems>
</Table>
</ChildItems>
<Attributes>
<Attribute name="СписокУстройств" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Список устройств</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>cfg:DynamicList</v8:Type>
</Type>
<MainAttribute>true</MainAttribute>
<UseAlways>
<Field>~СписокУстройств.КомпонентаПодключенияОборудования</Field>
<Field>СписокУстройств.Ref</Field>
</UseAlways>
<Settings xsi:type="DynamicList">
<ManualQuery>true</ManualQuery>
<DynamicDataRead>true</DynamicDataRead>
<QueryText>ВЫБРАТЬ
СправочникПодключаемоеОборудование.Ссылка,
СправочникПодключаемоеОборудование.ПометкаУдаления,
СправочникПодключаемоеОборудование.Наименование,
СправочникПодключаемоеОборудование.УстройствоИспользуется,
СправочникПодключаемоеОборудование.ТипПодключения,
СправочникПодключаемоеОборудование.ТипОборудования,
СправочникПодключаемоеОборудование.ДрайверОборудования,
СправочникПодключаемоеОборудование.Параметры,
СправочникПодключаемоеОборудование.РабочееМесто,
СправочникПодключаемоеОборудование.РабочееМесто.Код КАК РабочееМестоКод,
СправочникПодключаемоеОборудование.РабочееМесто.ИмяКомпьютера КАК ИмяКомпьютера,
СправочникПодключаемоеОборудование.ТребуетсяПереустановка,
СправочникПодключаемоеОборудование.ОграничениеДоступа,
СправочникПодключаемоеОборудование.Предопределенный,
СправочникПодключаемоеОборудование.ИмяПредопределенныхДанных
ИЗ
Справочник.ПодключаемоеОборудование КАК СправочникПодключаемоеОборудование</QueryText>
<MainTable>Catalog.ПодключаемоеОборудование</MainTable>
<ListSettings>
<dcsset:filter>
<dcsset:viewMode>Normal</dcsset:viewMode>
</dcsset:filter>
<dcsset:order>
<dcsset:viewMode>Normal</dcsset:viewMode>
<dcsset:userSettingID>88619765-ccb3-46c6-ac52-38e9c992ebd4</dcsset:userSettingID>
</dcsset:order>
<dcsset:conditionalAppearance>
<dcsset:viewMode>Normal</dcsset:viewMode>
<dcsset:userSettingID>b75fecce-942b-4aed-abc9-e6a02e460fb3</dcsset:userSettingID>
</dcsset:conditionalAppearance>
<dcsset:itemsViewMode>Normal</dcsset:itemsViewMode>
</ListSettings>
</Settings>
</Attribute>
<Attribute name="ТекущееРабочееМесто" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Текущее рабочее место</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>cfg:CatalogRef.РабочиеМеста</v8:Type>
</Type>
</Attribute>
<Attribute name="ТипПодключенияОборудования" id="4">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Тип подключения оборудования</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>cfg:EnumRef.ТипыПодключенияОборудования</v8:Type>
</Type>
</Attribute>
<Attribute name="ТипОборудования" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Тип оборудования</v8:content>
</v8:item>
</Title>
<Type>
<v8:TypeSet>cfg:DefinedType.ТипыПодключаемогоОборудования</v8:TypeSet>
</Type>
</Attribute>
<Attribute name="РабочееМесто" id="6">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Рабочее место</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>100</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="ОтображатьДопЭлементы" id="9">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Отображать дополнительные элементы</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
</Attributes>
<Commands>
<Command name="ДрайверыОборудования" id="1">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="НастроитьОборудование" id="2">
<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>
<Command name="ВыборРабочегоМеста" id="3">
<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>
<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>
<Command name="СообщениеВТехническуюПоддержку" id="5">
<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>

View File

@ -0,0 +1,461 @@

#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// Пропускаем инициализацию, чтобы гарантировать получение формы при передаче параметра "АвтоТест".
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
ОтображатьДопЭлементы = НЕ ОбщегоНазначенияБПО.ЭтоМобильнаяПлатформа();
ТипПодключенияОборудования = Перечисления.ТипыПодключенияОборудования.ЛокальноеПодключение;
ОбновитьСписокТиповОборудования();
УстановитьУсловноеОформление();
Элементы.СписокУстройствСообщениеВТехническуюПоддержку.Видимость = ОбщегоНазначенияБПО.ИспользуетсяСообщенияВСлужбуТехническойПоддержки()
И ОбщегоНазначенияБПОСлужебныйВызовСервера.ЗаполненыДанныеАутентификацииПользователяИнтернетПоддержки();
// Вызов БСП
// СтандартныеПодсистемы.ПодключаемыеКоманды
Если ОбщегоНазначенияБПО.ПодсистемаСуществует("СтандартныеПодсистемы.ПодключаемыеКоманды") Тогда
МодульПодключаемыеКоманды = ОбщегоНазначенияБПО.ОбщийМодуль("ПодключаемыеКоманды");
МодульПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект);
КонецЕсли;
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
// Конец Вызов БСП
КонецПроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
Если ОбщегоНазначенияБПОКлиент.ИспользуетсяСообщенияВСлужбуТехническойПоддержки() Тогда
МодульСообщенияВСлужбуТехническойПоддержкиБПОКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("СообщенияВСлужбуТехническойПоддержкиБПОКлиент");
Элементы.СписокУстройствСообщениеВТехническуюПоддержку.Видимость
= МодульСообщенияВСлужбуТехническойПоддержкиБПОКлиент.ОтправлятьСообщенияВТехПоддержку();
КонецЕсли;
МенеджерОборудованияКлиент.УстановитьРежимПодключенияРасширенияИнформацииОКомпьютере(Истина);
МенеджерОборудованияКлиент.ОбновитьРабочееМестоКлиента();
Если Не ЗначениеЗаполнено(ТекущееРабочееМесто) Тогда
ТекущееРабочееМесто = МенеджерОборудованияКлиент.РабочееМестоКлиента();
ОбновитьПользовательскийИнтерфейс();
КонецЕсли;
ОбновитьОтображение();
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовТаблицыФормыСписокУстройств
&НаКлиенте
Асинх Процедура СписокУстройствПриИзменении(Элемент)
ВыбранноеОборудование = Элементы.СписокУстройств.ТекущаяСтрока;
Если ВыбранноеОборудование = Неопределено ИЛИ НЕ ТипЗнч(ВыбранноеОборудование) = Тип("СправочникСсылка.ПодключаемоеОборудование") Тогда
Возврат;
КонецЕсли;
ВыдаватьПредупреждение = Истина;
ТекстПредупреждения = НСтр("ru = 'Оборудование %1 используется в приложении.
|Пометка на удаление может привести к некорректной работе с этим оборудованием.
|Продолжить выполнение операции?'");
ТекстПредупреждения = СтрШаблон(ТекстПредупреждения, ВыбранноеОборудование);
ОпределитьВозможностьПометкиНаУдалениеОборудования(ВыбранноеОборудование, ВыдаватьПредупреждение, ТекстПредупреждения);
Если ВыдаватьПредупреждение Тогда
Если Ждать ВопросАсинх(ТекстПредупреждения, РежимДиалогаВопрос.ДаНет) = КодВозвратаДиалога.Нет Тогда
СнятьПометкуУдаленияУОбъекта(ВыбранноеОборудование);
ОповеститьОбИзменении(ВыбранноеОборудование);
ОбновитьОтображениеДанных(Элементы.СписокУстройств);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура СписокУстройствПриАктивизацииСтроки(Элемент)
Элементы.СписокУстройствСообщениеВТехническуюПоддержку.Доступность =
ТипЗнч(Элементы.СписокУстройств.ТекущаяСтрока) = Тип("СправочникСсылка.ПодключаемоеОборудование");
// Вызов БСП
// СтандартныеПодсистемы.ПодключаемыеКоманды
Если ОбщегоНазначенияБПОКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ПодключаемыеКоманды") Тогда
МодульПодключаемыеКомандыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ПодключаемыеКомандыКлиент");
МодульПодключаемыеКомандыКлиент.НачатьОбновлениеКоманд(ЭтотОбъект);
КонецЕсли;
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
// Конец Вызов БСП
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура ТипПодключенияОборудованияПриИзменении(Элемент)
ОбновитьОтображение();
КонецПроцедуры
&НаКлиенте
Процедура РабочееМестоПриИзменении(Элемент)
ОбновитьОтображение();
КонецПроцедуры
&НаКлиенте
Процедура ТипОборудованияПриИзменении(Элемент)
ОбновитьОтображение();
КонецПроцедуры
&НаКлиенте
Процедура ВыборРабочегоМестаЗавершение(Результат, ПараметрыВыбора) Экспорт
Если ТипЗнч(Результат) = Тип("Структура") И Результат.Свойство("РабочееМесто") Тогда
МенеджерОборудованияКлиент.УстановитьРабочееМесто(Результат.РабочееМесто);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ВыборРабочегоМеста(Команда)
Оповещение = Новый ОписаниеОповещения("ВыборРабочегоМестаЗавершение", ЭтотОбъект);
МенеджерОборудованияКлиент.ПредложитьВыборРабочегоМеста(Оповещение);
КонецПроцедуры
&НаКлиенте
Процедура СписокРабочихМест(Команда)
Режим = РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс;
ОткрытьФорму("Справочник.РабочиеМеста.ФормаСписка",,,,,,, Режим);
КонецПроцедуры
&НаКлиенте
Процедура ДрайверыОборудования(Команда)
ОткрытьФорму("Справочник.ДрайверыОборудования.ФормаСписка");
КонецПроцедуры
&НаКлиенте
Процедура СообщениеВТехническуюПоддержку(Команда)
Если ТипЗнч(Элементы.СписокУстройств.ТекущаяСтрока) = Тип("СправочникСсылка.ПодключаемоеОборудование") Тогда
ИдентификаторОборудования = Элементы.СписокУстройств.ТекущаяСтрока;
Если МенеджерОборудованияВызовСервера.ДрайверПоставляетсяВКонфигурации(ИдентификаторОборудования) Тогда
МодульСообщенияВСлужбуТехническойПоддержкиБПОКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("СообщенияВСлужбуТехническойПоддержкиБПОКлиент");
ПараметрыДляСообщения = МодульСообщенияВСлужбуТехническойПоддержкиБПОКлиент.ПараметрыОтправкиСообщенияОбОшибке();
ПараметрыДляСообщения.ИдентификаторОборудования = ИдентификаторОборудования;
ПараметрыДляСообщения.ТекстОшибки = НСтр("ru = 'Информация для тех.поддержки'");
ОписаниеОповещения = Новый ОписаниеОповещения("СообщениеВТехническуюПоддержкуЗавершение", ЭтотОбъект);
МодульСообщенияВСлужбуТехническойПоддержкиБПОКлиент.НачатьОтправкуСообщенияОбОшибке(ОписаниеОповещения, ПараметрыДляСообщения);
Иначе
ТекстСообщения = НСтр("ru = 'Обратитесь, пожалуйста, за помощью к поставщику драйвера.'");
ПоказатьПредупреждение(, ТекстСообщения);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура СообщениеВТехническуюПоддержкуЗавершение(Результат, ДополнительныеПараметры) Экспорт
Если Не ПустаяСтрока(Результат.КодОшибки) Тогда
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(Результат.СообщениеОбОшибке);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаСервере
Процедура УстановитьУсловноеОформление()
СписокУстройств.УсловноеОформление.Элементы.Очистить();
ЭлементУсловногоОформления = СписокУстройств.УсловноеОформление.Элементы.Добавить();
ОтборЭлемента = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("УстройствоИспользуется");
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Ложь;
ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра("TextColor", ЦветаСтиля.ЦветРамки);
КонецПроцедуры
&НаСервере
Процедура ОбновитьПользовательскийИнтерфейс()
ОбновитьСписокРабочихМест();
РабочееМестоКлиента = МенеджерОборудованияВызовСервера.РабочееМестоКлиента();
Если ТекущееРабочееМесто = Справочники.РабочиеМеста.ПустаяСсылка()
Или ТекущееРабочееМесто <> РабочееМестоКлиента Тогда
ТекущееРабочееМесто = РабочееМестоКлиента;
КонецЕсли;
КодТекущегоРабочегоМеста = ОбщегоНазначенияБПО.ЗначениеРеквизитаОбъекта(ТекущееРабочееМесто, "Код");
РабочееМесто = КодТекущегоРабочегоМеста;
СписокУстройств.Отбор.Элементы.Очистить();
// ЭлементОтбора - 0 - РабочееМесто
ЭлементОтбора = СписокУстройств.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("РабочееМестоКод");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Строка(РабочееМесто);
ЭлементОтбора.Использование = Ложь;
Если ОтображатьДопЭлементы Тогда
// ЭлементОтбора - 1 - ТипПодключения
ЭлементОтбора = СписокУстройств.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТипПодключения");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Перечисления.ТипыПодключенияОборудования.ЛокальноеПодключение;
ЭлементОтбора.Использование = Истина;
// ЭлементОтбора - 2 - ТипОборудования
ЭлементОтбора = СписокУстройств.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТипОборудования");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Неопределено;
ЭлементОтбора.Использование = Ложь;
КонецЕсли;
// Группировка - 0 - ТипОборудования
СписокУстройств.Группировка.Элементы.Очистить();
ЭлементГруппировки = СписокУстройств.Группировка.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных"));
ЭлементГруппировки.Поле = Новый ПолеКомпоновкиДанных("ТипОборудования");
ЭлементГруппировки.Использование = Истина;
Элементы.СписокУстройств.Шапка = ОтображатьДопЭлементы;
Элементы.Управление.Видимость = ОтображатьДопЭлементы;
Элементы.СписокУстройствДрайверОборудования.Видимость = ОтображатьДопЭлементы;
СетевоеОборудование = МенеджерОборудования.ДоступноСетевоеОборудование();
Элементы.ТипПодключенияОборудования.Видимость = СетевоеОборудование;
КонецПроцедуры
&НаСервере
Процедура ОбновитьПараметрыРабочегоМеста()
Если ТекущееРабочееМесто = Справочники.РабочиеМеста.ПустаяСсылка()
Или ТекущееРабочееМесто <> МенеджерОборудованияВызовСервера.РабочееМестоКлиента() Тогда
ТекущееРабочееМесто = МенеджерОборудованияВызовСервера.РабочееМестоКлиента();
РабочееМесто = ОбщегоНазначенияБПО.ЗначениеРеквизитаОбъекта(ТекущееРабочееМесто, "Код");
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьОтображение()
ЛокальноеПодключение = ТипПодключенияОборудования = ПредопределенноеЗначение("Перечисление.ТипыПодключенияОборудования.ЛокальноеПодключение");
Элементы.СписокУстройствРабочееМесто.Видимость = Ложь;
#Если МобильноеПриложениеКлиент Тогда
СписокУстройств.Отбор.Элементы[0].Использование = Ложь;
#Иначе
Если ЛокальноеПодключение Тогда
// ЭлементОтбора - 0 - РабочееМесто
Если РабочееМесто = "0" Тогда // ВСЕ
СписокУстройств.Отбор.Элементы[0].Использование = Ложь;
Элементы.СписокУстройствРабочееМесто.Видимость = ОтображатьДопЭлементы;
Иначе
СписокУстройств.Отбор.Элементы[0].ПравоеЗначение = Строка(РабочееМесто);
СписокУстройств.Отбор.Элементы[0].Использование = Истина;
КонецЕсли;
Иначе
СписокУстройств.Отбор.Элементы[0].Использование = Ложь;
КонецЕсли;
#КонецЕсли
Если ОтображатьДопЭлементы Тогда
// ЭлементОтбора - 1 - ТипПодключения
СписокУстройств.Отбор.Элементы[1].ПравоеЗначение = ТипПодключенияОборудования;
Элементы.РабочееМесто.Видимость = ЛокальноеПодключение;
Элементы.ТипОборудования.Видимость = ЛокальноеПодключение;
// ЭлементОтбора - 2 - ТипОборудования
Если ПустаяСтрока(ТипОборудования) Или Не ЛокальноеПодключение Тогда
СписокУстройств.Отбор.Элементы[2].Использование = Ложь; // ТипОборудования
Иначе
СписокУстройств.Отбор.Элементы[2].ПравоеЗначение = ТипОборудования;
СписокУстройств.Отбор.Элементы[2].Использование = Истина; // ТипОборудования
КонецЕсли;
// Группировка - 0 - ТипОборудования
СписокУстройств.Группировка.Элементы[0].Использование = Не СписокУстройств.Отбор.Элементы[2].Использование;
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ОбновитьСписокТиповОборудования();
СписокОборудования = МенеджерОборудования.ДоступныеТипыОборудования();
Для Каждого ТипПО Из СписокОборудования Цикл
Элементы.ТипОборудования.СписокВыбора.Добавить(ТипПО);
КонецЦикла;
ТипОборудования = Перечисления.ТипыПодключаемогоОборудования.ПустаяСсылка();
КонецПроцедуры
&НаСервере
Процедура ОбновитьСписокРабочихМест();
Элементы.РабочееМесто.СписокВыбора.Очистить();
Элементы.РабочееМесто.СписокВыбора.Добавить("0", НСтр("ru = '<ВСЕ>'"));
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ РАЗЛИЧНЫЕ
| РабочиеМеста.Ссылка КАК Ссылка,
| РабочиеМеста.Код КАК Код,
| РабочиеМеста.Наименование КАК Наименование
|ИЗ
| Справочник.РабочиеМеста КАК РабочиеМеста
|
|УПОРЯДОЧИТЬ ПО
| Наименование УБЫВ";
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
Элементы.РабочееМесто.СписокВыбора.Добавить(ВыборкаДетальныеЗаписи.Код, ВыборкаДетальныеЗаписи.Наименование);
КонецЦикла;
КонецПроцедуры
&НаКлиенте
Процедура НастроитьОборудование(Команда)
ОчиститьСообщения();
Если Элементы.СписокУстройств.ТекущиеДанные = Неопределено Тогда
Возврат;
КонецЕсли;
Если Элементы.СписокУстройств.ТекущиеДанные.Свойство("Ссылка") Тогда
ТипКассы = ТипОборудования(Элементы.СписокУстройств.ТекущиеДанные.Ссылка);
Если ТипКассы = ПредопределенноеЗначение("Перечисление.ТипыПодключаемогоОборудования.ОблачнаяККТ") Тогда
МодульОблачныеКассы = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ОблачныеКассыКлиент");
МодульОблачныеКассы.НастройкаПодключения(Элементы.СписокУстройств.ТекущиеДанные.Ссылка);
Иначе
МенеджерОборудованияКлиент.ВыполнитьНастройкуОборудования(Элементы.СписокУстройств.ТекущиеДанные.Ссылка);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия = "ИзмененоРабочееМестоТекущегоСеанса" Тогда
ОбновитьПараметрыРабочегоМеста();
ОбновитьОтображение();
ИначеЕсли ИмяСобытия = "ИзмененыДоступныеТипыПодключаемогоОборудования" Тогда
ОбновитьПользовательскийИнтерфейс();
КонецЕсли;
КонецПроцедуры
&НаСервереБезКонтекста
Процедура ОпределитьВозможностьПометкиНаУдалениеОборудования(ПодключаемоеОборудование, ВыдаватьПредупреждение, ТекстПредупреждения)
ПометкаУдаленияОбъекта = ОбщегоНазначенияБПО.ЗначениеРеквизитаОбъекта(ПодключаемоеОборудование, "ПометкаУдаления");
ПометкаУдаленияОбъекта = (ПометкаУдаленияОбъекта = Истина); // Может быть Неопределено
Если ПометкаУдаленияОбъекта Тогда
СтандартнаяОбработка = Истина;
МенеджерОборудованияВызовСервераПереопределяемый.ОпределитьВозможностьОтключенияОборудования(
ПодключаемоеОборудование, ВыдаватьПредупреждение, ТекстПредупреждения, СтандартнаяОбработка);
Если СтандартнаяОбработка Тогда
ВыдаватьПредупреждение = Истина;
КонецЕсли;
Иначе
ВыдаватьПредупреждение = Ложь;
КонецЕсли;
КонецПроцедуры
&НаСервереБезКонтекста
Процедура СнятьПометкуУдаленияУОбъекта(ВыбранноеОборудование);
ВыбранноеОборудованиеОбъект = ВыбранноеОборудование.ПолучитьОбъект();
ВыбранноеОборудованиеОбъект.ПометкаУдаления = Ложь;
ВыбранноеОборудованиеОбъект.Записать();
КонецПроцедуры
&НаСервереБезКонтекста
Функция ТипОборудования(СсылкаОборудования)
Возврат ОбщегоНазначенияБПО.ЗначениеРеквизитаОбъекта(СсылкаОборудования, "ТипОборудования");
КонецФункции
// СтандартныеПодсистемы.ПодключаемыеКоманды
&НаКлиенте
Процедура Подключаемый_ВыполнитьКоманду(Команда)
// Вызов БСП
Если ОбщегоНазначенияБПОКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ПодключаемыеКоманды") Тогда
МодульПодключаемыеКомандыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ПодключаемыеКомандыКлиент");
МодульПодключаемыеКомандыКлиент.НачатьВыполнениеКоманды(ЭтотОбъект, Команда, Элементы.СписокУстройств);
КонецЕсли;
// Конец Вызов БСП
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПродолжитьВыполнениеКомандыНаСервере(ПараметрыВыполнения, ДополнительныеПараметры)
ВыполнитьКомандуНаСервере(ПараметрыВыполнения);
КонецПроцедуры
&НаСервере
Процедура ВыполнитьКомандуНаСервере(ПараметрыВыполнения)
// Вызов БСП
Если ОбщегоНазначенияБПО.ПодсистемаСуществует("СтандартныеПодсистемы.ПодключаемыеКоманды") Тогда
МодульПодключаемыеКоманды = ОбщегоНазначенияБПО.ОбщийМодуль("ПодключаемыеКоманды");
МодульПодключаемыеКоманды.ВыполнитьКоманду(ЭтотОбъект, ПараметрыВыполнения, Элементы.СписокУстройств);
КонецЕсли;
// Конец Вызов БСП
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ОбновитьКоманды()
// Вызов БСП
Если ОбщегоНазначенияБПОКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ПодключаемыеКоманды") Тогда
МодульПодключаемыеКомандыКлиентСервер = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ПодключаемыеКомандыКлиентСервер");
МодульПодключаемыеКомандыКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Элементы.СписокУстройств);
КонецЕсли;
// Конец Вызов БСП
КонецПроцедуры
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
#КонецОбласти

View File

@ -0,0 +1,22 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Form uuid="df752808-b56b-4f3c-9a90-9e69ef135cd8">
<Properties>
<Name>ФормаЭлемента</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма элемента</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
</Properties>
</Form>
</MetaDataObject>

View File

@ -0,0 +1,717 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<WindowOpeningMode>LockOwner</WindowOpeningMode>
<Group>Vertical</Group>
<CommandSet>
<ExcludedCommand>Abort</ExcludedCommand>
<ExcludedCommand>Cancel</ExcludedCommand>
<ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>CustomizeForm</ExcludedCommand>
<ExcludedCommand>Delete</ExcludedCommand>
<ExcludedCommand>Help</ExcludedCommand>
<ExcludedCommand>Ignore</ExcludedCommand>
<ExcludedCommand>No</ExcludedCommand>
<ExcludedCommand>OK</ExcludedCommand>
<ExcludedCommand>Reread</ExcludedCommand>
<ExcludedCommand>RestoreValues</ExcludedCommand>
<ExcludedCommand>Retry</ExcludedCommand>
<ExcludedCommand>SaveValues</ExcludedCommand>
<ExcludedCommand>SetDeletionMark</ExcludedCommand>
<ExcludedCommand>ShowInList</ExcludedCommand>
<ExcludedCommand>Yes</ExcludedCommand>
</CommandSet>
<UseForFoldersAndItems>Items</UseForFoldersAndItems>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<ChildItems>
<Button name="ФормаЗаписать" id="35">
<Type>CommandBarButton</Type>
<Representation>Picture</Representation>
<CommandName>Form.StandardCommand.Write</CommandName>
<ExtendedTooltip name="ФормаЗаписатьРасширеннаяПодсказка" id="36"/>
</Button>
<Button name="ПараметрыПодключения" id="16">
<Type>CommandBarButton</Type>
<GroupHorizontalAlign>Right</GroupHorizontalAlign>
<CommandName>Form.Command.ПараметрыПодключения</CommandName>
<ExtendedTooltip name="ПараметрыПодключенияРасширеннаяПодсказка" id="17"/>
</Button>
<Button name="ФормаЗагрузитьССайтаИТС" id="217">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.ЗагрузитьССайтаИТС</CommandName>
<ExtendedTooltip name="ФормаЗагрузитьССайтаИТСРасширеннаяПодсказка" id="218"/>
</Button>
<Button name="ФормаСообщениеВТехническуюПоддержку" id="215">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.СообщениеВТехническуюПоддержку</CommandName>
<ExtendedTooltip name="ФормаСообщениеВТехническуюПоддержкуРасширеннаяПодсказка" id="216"/>
</Button>
<Button name="ФормаОперацииСОборудованием" id="219">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.ОперацииСОборудованием</CommandName>
<ExtendedTooltip name="ФормаОперацииСОборудованиемРасширеннаяПодсказка" id="220"/>
</Button>
</ChildItems>
</AutoCommandBar>
<Events>
<Event name="AfterWrite">ПослеЗаписи</Event>
<Event name="AfterWriteAtServer">ПослеЗаписиНаСервере</Event>
<Event name="OnReadAtServer">ПриЧтенииНаСервере</Event>
<Event name="OnOpen">ПриОткрытии</Event>
<Event name="BeforeClose">ПередЗакрытием</Event>
<Event name="BeforeWrite">ПередЗаписью</Event>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
<Event name="BeforeWriteAtServer">ПередЗаписьюНаСервере</Event>
<Event name="OnWriteAtServer">ПриЗаписиНаСервере</Event>
<Event name="URLProcessing">ОбработкаНавигационнойСсылки</Event>
<Event name="FillCheckProcessingAtServer">ОбработкаПроверкиЗаполненияНаСервере</Event>
</Events>
<ChildItems>
<LabelDecoration name="ПерейтиНаСайтИнструкции" id="212">
<AutoMaxWidth>false</AutoMaxWidth>
<HorizontalStretch>true</HorizontalStretch>
<Font ref="style:NormalTextFont" bold="true" italic="false" underline="false" strikeout="false" kind="StyleItem"/>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Перейти к инструкциям по работе с торговым оборудованием</v8:content>
</v8:item>
</Title>
<Hyperlink>true</Hyperlink>
<ContextMenu name="ПерейтиНаСайтИнструкцииКонтекстноеМеню" id="213"/>
<ExtendedTooltip name="ПерейтиНаСайтИнструкцииРасширеннаяПодсказка" id="214"/>
<Events>
<Event name="Click">ПерейтиНаСайтИнструкцииНажатие</Event>
</Events>
</LabelDecoration>
<Pages name="Закладки" id="150">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Закладки</v8:content>
</v8:item>
</Title>
<PagesRepresentation>TabsOnTop</PagesRepresentation>
<ExtendedTooltip name="ЗакладкиРасширеннаяПодсказка" id="151"/>
<ChildItems>
<Page name="Основное" id="154">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Основное</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<ScrollOnCompress>false</ScrollOnCompress>
<ExtendedTooltip name="ОсновноеРасширеннаяПодсказка" id="155"/>
<ChildItems>
<UsualGroup name="Управление" id="156">
<Group>HorizontalIfPossible</Group>
<Behavior>Usual</Behavior>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="УправлениеРасширеннаяПодсказка" id="157"/>
<ChildItems>
<CheckBoxField name="УстройствоИспользуется" id="192">
<DataPath>Объект.УстройствоИспользуется</DataPath>
<TitleLocation>Right</TitleLocation>
<ContextMenu name="УстройствоИспользуетсяКонтекстноеМеню" id="193"/>
<ExtendedTooltip name="УстройствоИспользуетсяРасширеннаяПодсказка" id="194"/>
<Events>
<Event name="OnChange">УстройствоИспользуетсяПриИзменении</Event>
</Events>
</CheckBoxField>
</ChildItems>
</UsualGroup>
<InputField name="ТипПодключения" id="79">
<DataPath>Объект.ТипПодключения</DataPath>
<ReadOnly>true</ReadOnly>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="ТипПодключенияКонтекстноеМеню" id="80"/>
<ExtendedTooltip name="ТипПодключенияРасширеннаяПодсказка" id="81"/>
</InputField>
<InputField name="ТипОборудования" id="195">
<DataPath>Объект.ТипОборудования</DataPath>
<AutoMaxWidth>false</AutoMaxWidth>
<DropListButton>true</DropListButton>
<ChoiceButton>false</ChoiceButton>
<BackColor>style:NavigationColor</BackColor>
<ContextMenu name="ТипОборудованияКонтекстноеМеню" id="196"/>
<ExtendedTooltip name="ТипОборудованияРасширеннаяПодсказка" id="197"/>
<Events>
<Event name="StartChoice">ТипОборудованияНачалоВыбора</Event>
<Event name="ChoiceProcessing">ТипОборудованияОбработкаВыбора</Event>
</Events>
</InputField>
<InputField name="ДрайверОборудования" id="10">
<DataPath>Объект.ДрайверОборудования</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Драйвер оборудования</v8:content>
</v8:item>
</Title>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<AutoMaxWidth>false</AutoMaxWidth>
<ChooseType>false</ChooseType>
<TextEdit>false</TextEdit>
<ContextMenu name="ДрайверОборудованияКонтекстноеМеню" id="11"/>
<ExtendedTooltip name="ДрайверОборудованияРасширеннаяПодсказка" id="12"/>
<Events>
<Event name="ChoiceProcessing">ДрайверОборудованияОбработкаВыбора</Event>
</Events>
</InputField>
<InputField name="Организация" id="76">
<DataPath>Объект.Организация</DataPath>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="ОрганизацияКонтекстноеМеню" id="77"/>
<ExtendedTooltip name="ОрганизацияРасширеннаяПодсказка" id="78"/>
</InputField>
<InputField name="Наименование" id="1">
<DataPath>Объект.Description</DataPath>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="2"/>
<ExtendedTooltip name="НаименованиеРасширеннаяПодсказка" id="3"/>
</InputField>
<InputField name="РабочееМесто" id="25">
<DataPath>Объект.РабочееМесто</DataPath>
<AutoMaxWidth>false</AutoMaxWidth>
<OpenButton>false</OpenButton>
<ContextMenu name="РабочееМестоКонтекстноеМеню" id="26"/>
<ExtendedTooltip name="РабочееМестоРасширеннаяПодсказка" id="27"/>
</InputField>
<InputField name="СерийныйНомер" id="198">
<DataPath>Объект.СерийныйНомер</DataPath>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="СерийныйНомерКонтекстноеМеню" id="199"/>
<ExtendedTooltip name="СерийныйНомерРасширеннаяПодсказка" id="200"/>
</InputField>
</ChildItems>
</Page>
<Page name="ФискальныеДанные" id="152">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Фискальные данные</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<ScrollOnCompress>false</ScrollOnCompress>
<ExtendedTooltip name="ФискальныеДанныеРасширеннаяПодсказка" id="153"/>
<ChildItems>
<CommandBar name="СервисФискальногоНакопителя" id="174">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Сервис фискального накопителя</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="СервисФискальногоНакопителяРасширеннаяПодсказка" id="175"/>
<ChildItems>
<Popup name="ФискальныйНакопитель" id="176">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Операция с фискальным накопителем</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="ФискальныйНакопительРасширеннаяПодсказка" id="177"/>
<ChildItems>
<Button name="РегистрацияФискальногоНакопителя" id="178">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.РегистрацияФискальногоНакопителя</CommandName>
<ExtendedTooltip name="РегистрацияФискальногоНакопителяРасширеннаяПодсказка" id="179"/>
</Button>
<Button name="ИзменениеПараметровРегистрацииФискальногоНакопителя" id="180">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.ИзменениеПараметровРегистрацииФискальногоНакопителя</CommandName>
<ExtendedTooltip name="ИзменениеПараметровРегистрацииФискальногоНакопителяРасширеннаяПодсказка" id="181"/>
</Button>
<Button name="ЗакрытиеФискальногоНакопителя" id="182">
<Type>CommandBarButton</Type>
<CommandName>Form.Command.ЗакрытиеФискальногоНакопителя</CommandName>
<ExtendedTooltip name="ЗакрытиеФискальногоНакопителяРасширеннаяПодсказка" id="183"/>
</Button>
</ChildItems>
</Popup>
</ChildItems>
</CommandBar>
<Table name="ПараметрыРегистрацииККТ" id="128">
<Representation>List</Representation>
<CommandBarLocation>None</CommandBarLocation>
<ReadOnly>true</ReadOnly>
<ChangeRowSet>false</ChangeRowSet>
<ChangeRowOrder>false</ChangeRowOrder>
<SelectionMode>SingleRow</SelectionMode>
<RowSelectionMode>Row</RowSelectionMode>
<UseAlternationRowColorBWA>false</UseAlternationRowColorBWA>
<AutoInsertNewRow>true</AutoInsertNewRow>
<EnableStartDrag>true</EnableStartDrag>
<EnableDrag>true</EnableDrag>
<FileDragMode>AsFile</FileDragMode>
<DataPath>ПараметрыРегистрацииККТ</DataPath>
<CommandSet>
<ExcludedCommand>Add</ExcludedCommand>
<ExcludedCommand>CancelSearch</ExcludedCommand>
<ExcludedCommand>Change</ExcludedCommand>
<ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>Delete</ExcludedCommand>
<ExcludedCommand>EndEdit</ExcludedCommand>
<ExcludedCommand>ShowRowRearrangement</ExcludedCommand>
</CommandSet>
<RowFilter xsi:nil="true"/>
<ContextMenu name="ПараметрыРегистрацииККТКонтекстноеМеню" id="129"/>
<AutoCommandBar name="ПараметрыРегистрацииККТКоманднаяПанель" id="130">
<Autofill>false</Autofill>
</AutoCommandBar>
<ExtendedTooltip name="ПараметрыРегистрацииККТРасширеннаяПодсказка" id="131"/>
<SearchStringAddition name="ПараметрыРегистрацииККТСтрокаПоиска" id="132">
<AdditionSource>
<Item>ПараметрыРегистрацииККТ</Item>
<Type>SearchStringRepresentation</Type>
</AdditionSource>
<ContextMenu name="ПараметрыРегистрацииККТСтрокаПоискаКонтекстноеМеню" id="133"/>
<ExtendedTooltip name="ПараметрыРегистрацииККТСтрокаПоискаРасширеннаяПодсказка" id="134"/>
</SearchStringAddition>
<ViewStatusAddition name="ПараметрыРегистрацииККТСостояниеПросмотра" id="135">
<AdditionSource>
<Item>ПараметрыРегистрацииККТ</Item>
<Type>ViewStatusRepresentation</Type>
</AdditionSource>
<HorizontalLocation>Left</HorizontalLocation>
<ContextMenu name="ПараметрыРегистрацииККТСостояниеПросмотраКонтекстноеМеню" id="136"/>
<ExtendedTooltip name="ПараметрыРегистрацииККТСостояниеПросмотраРасширеннаяПодсказка" id="137"/>
</ViewStatusAddition>
<SearchControlAddition name="ПараметрыРегистрацииККТУправлениеПоиском" id="138">
<AdditionSource>
<Item>ПараметрыРегистрацииККТ</Item>
<Type>SearchControl</Type>
</AdditionSource>
<ContextMenu name="ПараметрыРегистрацииККТУправлениеПоискомКонтекстноеМеню" id="139"/>
<ExtendedTooltip name="ПараметрыРегистрацииККТУправлениеПоискомРасширеннаяПодсказка" id="140"/>
</SearchControlAddition>
<ChildItems>
<InputField name="ПараметрыРегистрацииККТНаименованиеПараметра" id="160">
<DataPath>ПараметрыРегистрацииККТ.НаименованиеПараметра</DataPath>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<Width>20</Width>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="ПараметрыРегистрацииККТНаименованиеПараметраКонтекстноеМеню" id="161"/>
<ExtendedTooltip name="ПараметрыРегистрацииККТНаименованиеПараметраРасширеннаяПодсказка" id="162"/>
</InputField>
<InputField name="ПараметрыРегистрацииККТЗначениеПараметра" id="163">
<DataPath>ПараметрыРегистрацииККТ.ЗначениеПараметра</DataPath>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<ContextMenu name="ПараметрыРегистрацииККТЗначениеПараметраКонтекстноеМеню" id="164"/>
<ExtendedTooltip name="ПараметрыРегистрацииККТЗначениеПараметраРасширеннаяПодсказка" id="165"/>
</InputField>
</ChildItems>
</Table>
<UsualGroup name="ГруппаККТ" id="201">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа ККТ</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Behavior>Usual</Behavior>
<Representation>WeakSeparation</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаККТРасширеннаяПодсказка" id="202"/>
<ChildItems>
<CheckBoxField name="АвтоматическаяФискализация" id="203">
<DataPath>Объект.АвтоматическаяФискализация</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Автоматическая фискализация чеков из очереди чеков</v8:content>
</v8:item>
</Title>
<TitleLocation>Right</TitleLocation>
<GroupHorizontalAlign>Left</GroupHorizontalAlign>
<ContextMenu name="АвтоматическаяФискализацияКонтекстноеМеню" id="204"/>
<ExtendedTooltip name="АвтоматическаяФискализацияРасширеннаяПодсказка" id="205"/>
</CheckBoxField>
<CheckBoxField name=спользуетсяФН36" id="206">
<DataPath>Объект.ИспользуетсяФН36</DataPath>
<TitleLocation>Right</TitleLocation>
<ContextMenu name=спользуетсяФН36КонтекстноеМеню" id="207"/>
<ExtendedTooltip name=спользуетсяФН36РасширеннаяПодсказка" id="208"/>
</CheckBoxField>
<LabelDecoration name="СообщениеИнфоПисьмо" id="209">
<Visible>false</Visible>
<AutoMaxWidth>false</AutoMaxWidth>
<AutoMaxHeight>false</AutoMaxHeight>
<HorizontalStretch>true</HorizontalStretch>
<Title formatted="true">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>&lt;fontsize 10&gt;&lt;color #000000&gt;Пользователи, переходящие с 01.01.2021 с ЕНВД на ОСН, могут не менять систему налогообложения &lt;/&gt;&lt;/&gt;
&lt;fontsize 10&gt;&lt;color #000000&gt;в настройках кассы, если используют фискальный накопитель со сроком действия 36 мес. &lt;/&gt;&lt;/&gt;
&lt;link https://its.1c.ru/bmk/envd_kkt&gt;&lt;u&gt;&lt;font Arial&gt;&lt;fontsize 10&gt;&lt;color #3541EB&gt;&lt;bgcolor #FFFFFF&gt;Подробнее см.&lt;/&gt;&lt;/&gt;&lt;/&gt;&lt;/&gt;&lt;/&gt;&lt;/&gt;&lt;fontsize 10&gt;&lt;color #000000&gt; Письмо ФНС России от 03.12.2020 № АБ-4-20/19907@.&lt;/&gt;&lt;/&gt;</v8:content>
</v8:item>
</Title>
<ContextMenu name="СообщениеИнфоПисьмоКонтекстноеМеню" id="210"/>
<ExtendedTooltip name="СообщениеИнфоПисьмоРасширеннаяПодсказка" id="211"/>
<Events>
<Event name="URLProcessing">СообщениеИнфоПисьмоОбработкаНавигационнойСсылки</Event>
</Events>
</LabelDecoration>
</ChildItems>
</UsualGroup>
<UsualGroup name="ФорматноЛогическийКонтроль" id="184">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форматно-логический контроль</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Behavior>Usual</Behavior>
<Representation>WeakSeparation</Representation>
<ExtendedTooltip name="ФорматноЛогическийКонтрольРасширеннаяПодсказка" id="185"/>
<ChildItems>
<InputField name="СпособФорматноЛогическогоКонтроля" id="186">
<DataPath>Объект.СпособФорматноЛогическогоКонтроля</DataPath>
<ContextMenu name="СпособФорматноЛогическогоКонтроляКонтекстноеМеню" id="187"/>
<ExtendedTooltip name="СпособФорматноЛогическогоКонтроляРасширеннаяПодсказка" id="188"/>
</InputField>
<InputField name="ДопустимоеРасхождениеФорматноЛогическогоКонтроля" id="189">
<DataPath>Объект.ДопустимоеРасхождениеФорматноЛогическогоКонтроля</DataPath>
<ContextMenu name="ДопустимоеРасхождениеФорматноЛогическогоКонтроляКонтекстноеМеню" id="190"/>
<ExtendedTooltip name="ДопустимоеРасхождениеФорматноЛогическогоКонтроляРасширеннаяПодсказка" id="191"/>
</InputField>
</ChildItems>
</UsualGroup>
</ChildItems>
</Page>
<Page name="Доступ" id="158">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Ограничение доступа</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<ScrollOnCompress>false</ScrollOnCompress>
<ExtendedTooltip name="ДоступРасширеннаяПодсказка" id="159"/>
<ChildItems>
<Table name="ОграничениеДоступа" id="105">
<RowSelectionMode>Cell</RowSelectionMode>
<Header>false</Header>
<UseAlternationRowColorBWA>false</UseAlternationRowColorBWA>
<AutoInsertNewRow>true</AutoInsertNewRow>
<EnableStartDrag>true</EnableStartDrag>
<EnableDrag>true</EnableDrag>
<DataPath>Объект.ОграничениеДоступа</DataPath>
<RowFilter xsi:nil="true"/>
<ContextMenu name="ОграничениеДоступаКонтекстноеМеню" id="106"/>
<AutoCommandBar name="ОграничениеДоступаКоманднаяПанель" id="107">
<Autofill>false</Autofill>
<ChildItems>
<Button name="ОграничениеДоступаДобавить" id="124">
<Type>CommandBarButton</Type>
<CommandName>Form.Item.ОграничениеДоступа.StandardCommand.Add</CommandName>
<ExtendedTooltip name="ОграничениеДоступаДобавитьРасширеннаяПодсказка" id="125"/>
</Button>
</ChildItems>
</AutoCommandBar>
<ExtendedTooltip name="ОграничениеДоступаРасширеннаяПодсказка" id="108"/>
<SearchStringAddition name="ОграничениеДоступаСтрокаПоиска" id="109">
<AdditionSource>
<Item>ОграничениеДоступа</Item>
<Type>SearchStringRepresentation</Type>
</AdditionSource>
<ContextMenu name="ОграничениеДоступаСтрокаПоискаКонтекстноеМеню" id="110"/>
<ExtendedTooltip name="ОграничениеДоступаСтрокаПоискаРасширеннаяПодсказка" id="111"/>
</SearchStringAddition>
<ViewStatusAddition name="ОграничениеДоступаСостояниеПросмотра" id="112">
<AdditionSource>
<Item>ОграничениеДоступа</Item>
<Type>ViewStatusRepresentation</Type>
</AdditionSource>
<HorizontalLocation>Left</HorizontalLocation>
<ContextMenu name="ОграничениеДоступаСостояниеПросмотраКонтекстноеМеню" id="113"/>
<ExtendedTooltip name="ОграничениеДоступаСостояниеПросмотраРасширеннаяПодсказка" id="114"/>
</ViewStatusAddition>
<SearchControlAddition name="ОграничениеДоступаУправлениеПоиском" id="115">
<AdditionSource>
<Item>ОграничениеДоступа</Item>
<Type>SearchControl</Type>
</AdditionSource>
<ContextMenu name="ОграничениеДоступаУправлениеПоискомКонтекстноеМеню" id="116"/>
<ExtendedTooltip name="ОграничениеДоступаУправлениеПоискомРасширеннаяПодсказка" id="117"/>
</SearchControlAddition>
<ChildItems>
<InputField name="ОграничениеДоступаПользователь" id="121">
<DataPath>Объект.ОграничениеДоступа.Пользователь</DataPath>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<ChooseType>false</ChooseType>
<TextEdit>false</TextEdit>
<ContextMenu name="ОграничениеДоступаПользовательКонтекстноеМеню" id="122"/>
<ExtendedTooltip name="ОграничениеДоступаПользовательРасширеннаяПодсказка" id="123"/>
</InputField>
</ChildItems>
</Table>
</ChildItems>
</Page>
</ChildItems>
</Pages>
</ChildItems>
<Attributes>
<Attribute name="Объект" id="1">
<Type>
<v8:Type>cfg:CatalogObject.ПодключаемоеОборудование</v8:Type>
</Type>
<MainAttribute>true</MainAttribute>
<SavedData>true</SavedData>
</Attribute>
<Attribute name="СозданиеНовогоЭлемента" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Создание нового элемента</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ПараметрыУстройства" id="3">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Параметры устройства</v8:content>
</v8:item>
</Title>
<Type/>
</Attribute>
<Attribute name="ПроверкаПараметров" id="4">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Проверка параметров</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ПараметрыРегистрацииККТ" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Параметры регистрации ККТ</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>v8:ValueTable</v8:Type>
</Type>
<Columns>
<Column name="НаименованиеПараметра" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование параметра</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>50</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Column>
<Column name="ЗначениеПараметра" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Значение параметра</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Column>
</Columns>
</Attribute>
<Attribute name="ТипОборудованияККТ" id="6">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Тип оборудования ККТ</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ПравоДоступаСохранениеДанныхПользователя" id="8">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Право доступа сохранение данных пользователя</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ОрганизацияВидимость" id="7">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Организация видимость</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
<Attribute name="ОтображатьДопЭлементы" id="9">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Отображать дополнительные элементы</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
</Attribute>
</Attributes>
<Commands>
<Command name="ПараметрыПодключения" id="1">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="ЗакрытиеФискальногоНакопителя" id="2">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="ИзменениеПараметровРегистрацииФискальногоНакопителя" id="3">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="ЗагрузитьССайтаИТС" id="5">
<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>
<Command name="СообщениеВТехническуюПоддержку" id="6">
<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>
<Command name="ОперацииСОборудованием" id="7">
<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>
<CommandInterface>
<NavigationPanel>
<Item>
<Command>0</Command>
<Type>Auto</Type>
<DefaultVisible>false</DefaultVisible>
<Visible>
<xr:Common>false</xr:Common>
</Visible>
</Item>
</NavigationPanel>
</CommandInterface>
</Form>

View File

@ -0,0 +1,712 @@
#Область ОбработчикиСобытийФорм
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// Пропускаем инициализацию, чтобы гарантировать получение формы при передаче параметра "АвтоТест".
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
ОтображатьДопЭлементы = НЕ ОбщегоНазначенияБПО.ЭтоМобильнаяПлатформа();
ПравоДоступаСохранениеДанныхПользователя = ПравоДоступа("СохранениеДанныхПользователя", Метаданные);
СозданиеНовогоЭлемента = Объект.Ссылка = Справочники.ПодключаемоеОборудование.ПустаяСсылка();
// Защита от изменения уже созданного экземпляра устройства.
Элементы.ДрайверОборудования.ТолькоПросмотр = НЕ СозданиеНовогоЭлемента;
Элементы.ДрайверОборудования.КнопкаОткрытия = Не СозданиеНовогоЭлемента;
Элементы.ТипОборудования.ТолькоПросмотр = НЕ СозданиеНовогоЭлемента;
ПроверкаПараметров = СозданиеНовогоЭлемента;
Если ОтображатьДопЭлементы Тогда
Элементы.РабочееМесто.Видимость = Объект.ТипПодключения = Перечисления.ТипыПодключенияОборудования.ЛокальноеПодключение;
Элементы.ОграничениеДоступа.Видимость = Объект.ТипПодключения = Перечисления.ТипыПодключенияОборудования.ОбщийДоступ;
Иначе
Элементы.РабочееМесто.Видимость = Ложь;
Элементы.ТипПодключения.Видимость = Ложь;
Элементы.ОграничениеДоступа.Видимость = Ложь;
Элементы.ПерейтиНаСайтИнструкции.Видимость = Ложь;
КонецЕсли;
Если СозданиеНовогоЭлемента Тогда
Если ПустаяСтрока(Объект.РабочееМесто)
И Объект.ТипПодключения = Перечисления.ТипыПодключенияОборудования.ЛокальноеПодключение Тогда
Объект.РабочееМесто = МенеджерОборудованияВызовСервера.РабочееМестоКлиента();
КонецЕсли;
Объект.УстройствоИспользуется = Истина;
Иначе
Если Объект.ПометкаУдаления Или Не Объект.УстройствоИспользуется Тогда
Элементы.ПараметрыПодключения.Доступность = Ложь;
КонецЕсли;
КонецЕсли;
Если ОбщегоНазначенияБПО.ИспользуетсяРаспределеннаяФискализация() Тогда
МодульРаспределеннаяФискализация = ОбщегоНазначенияБПО.ОбщийМодуль("РаспределеннаяФискализация");
Элементы.АвтоматическаяФискализация.Видимость = МодульРаспределеннаяФискализация.ДоступноРаспределеннаяФискализация();
Иначе
Элементы.АвтоматическаяФискализация.Видимость = Ложь;
КонецЕсли;
Если ОбщегоНазначенияБПО.ЭтоМобильнаяПлатформа() Тогда
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.ТипПодключения);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.ТипОборудования);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.ДрайверОборудования);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.Организация);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.Наименование);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.РабочееМесто);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.СерийныйНомер);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.СпособФорматноЛогическогоКонтроля);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.ДопустимоеРасхождениеФорматноЛогическогоКонтроля);
КонецЕсли;
Если СозданиеНовогоЭлемента Тогда
Элементы.ДрайверОборудования.РежимВыбораИзСписка = Истина;
ЗаполнитьСписокДрайверов();
КонецЕсли;
ОбновитьИнтерфейсФормы();
МенеджерОборудованияВызовСервераПереопределяемый.ЭкземплярОборудованияПриСозданииНаСервере(Объект, ЭтотОбъект, Отказ, Параметры, СтандартнаяОбработка);
УстановитьВидимостьОрганизацииНаСервере();
Если ОбщегоНазначенияБПО.ИспользуетсяЧекопечатающиеУстройства() Тогда
МодульОборудованиеЧекопечатающиеУстройства = ОбщегоНазначенияБПО.ОбщийМодуль("ОборудованиеЧекопечатающиеУстройства");
МодульОборудованиеЧекопечатающиеУстройства.ОбновитьПараметрыРегистрацииККТ(ПараметрыРегистрацииККТ, Объект.ПараметрыРегистрации);
КонецЕсли;
Если СозданиеНовогоЭлемента Тогда
Элементы.ФормаЗагрузитьССайтаИТС.Видимость = Ложь;
Иначе
ДрайверОборудованияСсылка = Объект.ДрайверОборудования;
ДрайверОборудованияРеквизиты = ОбщегоНазначенияБПО.ЗначенияРеквизитовОбъекта(ДрайверОборудованияСсылка, "СпособПодключения, СнятСПоддержки");
ДоступнаЗагрузкаССайтаИТС = ДрайверОборудованияРеквизиты.СпособПодключения = Перечисления.СпособПодключенияДрайвера.ИзИнформационнойБазы
И НЕ ДрайверОборудованияРеквизиты.СнятСПоддержки;
Элементы.ФормаЗагрузитьССайтаИТС.Видимость = ДоступнаЗагрузкаССайтаИТС
И ОбщегоНазначенияБПО.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ПолучениеВнешнихКомпонент");
КонецЕсли;
Элементы.ФормаСообщениеВТехническуюПоддержку.Видимость = ОбщегоНазначенияБПО.ИспользуетсяСообщенияВСлужбуТехническойПоддержки()
И ОбщегоНазначенияБПОСлужебныйВызовСервера.ЗаполненыДанныеАутентификацииПользователяИнтернетПоддержки();
Элементы.ФормаОперацииСОборудованием.Видимость =
ОбщегоНазначенияБПО.ИспользуетсяПодсистемаЛогирования()
И Не ОбщегоНазначенияБПО.ЭтоМобильнаяПлатформа();
// СтандартныеПодсистемы.ПодключаемыеКоманды
Если ОбщегоНазначенияБПО.ПодсистемаСуществует("СтандартныеПодсистемы.ПодключаемыеКоманды") Тогда
МодульПодключаемыеКоманды = ОбщегоНазначенияБПО.ОбщийМодуль("ПодключаемыеКоманды");
МодульПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект);
КонецЕсли;
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
КонецПроцедуры
&НаСервере
Процедура ПриЧтенииНаСервере(ТекущийОбъект)
МенеджерОборудованияВызовСервераПереопределяемый.ЭкземплярОборудованияПриЧтенииНаСервере(ТекущийОбъект, ЭтотОбъект);
// Вызов БСП
// СтандартныеПодсистемы.ПодключаемыеКоманды
Если ОбщегоНазначенияБПО.ПодсистемаСуществует("СтандартныеПодсистемы.ПодключаемыеКоманды") Тогда
МодульПодключаемыеКомандыКлиентСервер = ОбщегоНазначенияБПО.ОбщийМодуль("ПодключаемыеКомандыКлиентСервер");
МодульПодключаемыеКомандыКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Объект);
КонецЕсли;
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
// Конец Вызов БСП
КонецПроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
Если ОбщегоНазначенияБПОКлиент.ИспользуетсяСообщенияВСлужбуТехническойПоддержки() Тогда
МодульСообщенияВСлужбуТехническойПоддержкиБПОКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("СообщенияВСлужбуТехническойПоддержкиБПОКлиент");
Элементы.ФормаСообщениеВТехническуюПоддержку.Видимость
= МодульСообщенияВСлужбуТехническойПоддержкиБПОКлиент.ОтправлятьСообщенияВТехПоддержку();
КонецЕсли;
Элементы.ФормаЗагрузитьССайтаИТС.Доступность =
ЗначениеЗаполнено(Объект.ТипОборудования) И ЗначениеЗаполнено(Объект.ДрайверОборудования);
МенеджерОборудованияКлиентПереопределяемый.ЭкземплярОборудованияПриОткрытии(Объект, ЭтаФорма, Отказ);
// Вызов БСП
// СтандартныеПодсистемы.ПодключаемыеКоманды
Если ОбщегоНазначенияБПОКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ПодключаемыеКоманды") Тогда
МодульПодключаемыеКомандыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ПодключаемыеКомандыКлиент");
МодульПодключаемыеКомандыКлиент.НачатьОбновлениеКоманд(ЭтотОбъект);
КонецЕсли;
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
// Конец Вызов БСП
КонецПроцедуры
&НаКлиенте
Процедура ПередЗаписью(Отказ, ПараметрыЗаписи)
Если Не Отказ И Модифицированность Тогда
ОбновитьПовторноИспользуемыеЗначения();
КонецЕсли;
МенеджерОборудованияКлиентПереопределяемый.ЭкземплярОборудованияПередЗаписью(Объект, ЭтотОбъект, Отказ, ПараметрыЗаписи);
КонецПроцедуры
&НаСервере
Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
МенеджерОборудованияВызовСервераПереопределяемый.ЭкземплярОборудованияПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи);
ПараметрыЗаписи.Вставить("НовыйЭлементБПО", ТекущийОбъект.ЭтоНовый());
КонецПроцедуры
&НаСервере
Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
МенеджерОборудованияВызовСервераПереопределяемый.ЭкземплярОборудованияПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи);
КонецПроцедуры
&НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)
Если ПараметрыЗаписи.НовыйЭлементБПО И ЗначениеЗаполнено(ТекущийОбъект.ДрайверОборудования) Тогда
Если Не ОбщегоНазначенияБПО.РазделениеВключено() Тогда
ДобавитьДрайверВСправочникВнешнихКомпонентИзМакета(ТекущийОбъект.ДрайверОборудования);
КонецЕсли;
КонецЕсли;
ПараметрыЗаписи.Удалить("НовыйЭлементБПО");
ПараметрыУстройства = МенеджерОборудования.ПараметрыУстройства(Объект.Ссылка);
МенеджерОборудованияВызовСервераПереопределяемый.ЭкземплярОборудованияПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи);
ДрайверОборудованияСсылка = Объект.ДрайверОборудования;
ДрайверОборудованияРеквизиты =
ОбщегоНазначенияБПО.ЗначенияРеквизитовОбъекта(ДрайверОборудованияСсылка, "СпособПодключения, СнятСПоддержки");
ДоступнаЗагрузкаССайтаИТС =
ДрайверОборудованияРеквизиты.СпособПодключения = Перечисления.СпособПодключенияДрайвера.ИзИнформационнойБазы
И НЕ ДрайверОборудованияРеквизиты.СнятСПоддержки;
Элементы.ФормаЗагрузитьССайтаИТС.Видимость =
ДоступнаЗагрузкаССайтаИТС
И ОбщегоНазначенияБПО.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ПолучениеВнешнихКомпонент");
КонецПроцедуры
&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
СозданиеНовогоЭлемента = Ложь;
Элементы.ПараметрыПодключения.Видимость = НЕ СозданиеНовогоЭлемента;
ОбновитьИнтерфейсФормы();
МенеджерОборудованияКлиентПереопределяемый.ЭкземплярОборудованияПослеЗаписи(Объект, ЭтотОбъект, ПараметрыЗаписи);
// Вызов БСП
// СтандартныеПодсистемы.ПодключаемыеКоманды
Если ОбщегоНазначенияБПОКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ПодключаемыеКоманды") Тогда
МодульПодключаемыеКомандыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ПодключаемыеКомандыКлиент");
МодульПодключаемыеКомандыКлиент.ПослеЗаписи(ЭтотОбъект, Объект, ПараметрыЗаписи);
КонецЕсли;
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
// Конец Вызов БСП
КонецПроцедуры
&НаСервере
Процедура ОбработкаПроверкиЗаполненияНаСервере(Отказ, ПроверяемыеРеквизиты)
МенеджерОборудованияВызовСервераПереопределяемый.ЭкземплярОборудованияОбработкаПроверкиЗаполненияНаСервере(Объект, ЭтотОбъект, Отказ, ПроверяемыеРеквизиты);
КонецПроцедуры
&НаКлиенте
Процедура ПередЗакрытиемЗавершение(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
Если Модифицированность Или СозданиеНовогоЭлемента Тогда
Если Записать() Тогда
ПроверкаПараметров = Ложь;
Закрыть();
Иначе
Возврат;
КонецЕсли;
Иначе
ПроверкаПараметров = Ложь;
Закрыть();
КонецЕсли;
МенеджерОборудованияКлиент.ВыполнитьНастройкуОборудования(Объект.Ссылка);
Иначе
ПроверкаПараметров = Ложь;
Закрыть();
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка)
Если Не Объект.Ссылка.Пустая() Тогда
Если ПроверкаПараметров И Не ЗавершениеРаботы Тогда
Отказ = Истина;
Текст = НСтр("ru = 'Для использования устройства необходимо настроить параметры подключения.
|Перейти к настройке параметров подключения?'");
Оповещение = Новый ОписаниеОповещения("ПередЗакрытиемЗавершение", ЭтотОбъект);
ПоказатьВопрос(Оповещение, Текст, РежимДиалогаВопрос.ДаНет);
КонецЕсли;
МенеджерОборудованияКлиентПереопределяемый.ЭкземплярОборудованияПередЗакрытием(Объект, ЭтотОбъект, Отказ, СтандартнаяОбработка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаНавигационнойСсылки(НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
МенеджерОборудованияКлиентПереопределяемый.ЭкземплярОборудованияОбработкаНавигационнойСсылки(Объект, ЭтотОбъект, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементов
&НаКлиенте
Процедура ТипОборудованияОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
Если Объект.ТипОборудования <> ВыбранноеЗначение Тогда
Объект.ТипОборудования = ВыбранноеЗначение;
Модифицированность = Истина;
ЗаполнитьСписокДрайверов();
Элементы.ФормаЗагрузитьССайтаИТС.Доступность = Ложь;
Иначе
Элементы.ФормаЗагрузитьССайтаИТС.Доступность = ЗначениеЗаполнено(Объект.ДрайверОборудования);
КонецЕсли;
СтандартнаяОбработка = Ложь;
ОбновитьИнтерфейсФормы();
МенеджерОборудованияКлиентПереопределяемый.ЭкземплярОборудованияТипОборудованияВыбор(Объект, ЭтотОбъект, ЭтотОбъект, Элемент, ВыбранноеЗначение);
Если Элементы.Организация.Видимость <> ОрганизацияВидимость Тогда
УстановитьВидимостьОрганизацииНаСервере();
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ДрайверОборудованияОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
Если ВыбранноеЗначение <> Объект.ДрайверОборудования Тогда
Объект.Наименование = "'" + Строка(ВыбранноеЗначение) + "'"
+ ?(ПустаяСтрока(Строка(Объект.РабочееМесто)),
"",
" " + НСтр("ru='на'") + " " + Строка(Объект.РабочееМесто));
КонецЕсли;
Элементы.ФормаЗагрузитьССайтаИТС.Доступность = ЗначениеЗаполнено(ВыбранноеЗначение);
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовШапкиФормы
&НаКлиенте
Асинх Процедура УстройствоИспользуетсяПриИзменении(Элемент)
ВыбранноеОборудование = Объект.Ссылка;
Если ВыбранноеОборудование.Пустая() Тогда
Возврат;
КонецЕсли;
Если Объект.УстройствоИспользуется Тогда
Возврат;
КонецЕсли;
ВыдаватьПредупреждение = Истина;
ТекстПредупреждения = НСтр("ru = 'Оборудование %1 используется в приложении.
|Отключение может привести к некорректной работе с этим оборудованием.
|Продолжить выполнение операции?'");
ТекстПредупреждения = СтрШаблон(ТекстПредупреждения, ВыбранноеОборудование);
ОпределитьВозможностьОтключенияОборудования(ВыбранноеОборудование, ВыдаватьПредупреждение, ТекстПредупреждения);
Если ВыдаватьПредупреждение Тогда
Если Ждать ВопросАсинх(ТекстПредупреждения, РежимДиалогаВопрос.ДаНет) = КодВозвратаДиалога.Нет Тогда
Объект.УстройствоИспользуется = Истина;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура ПараметрыПодключения(Команда)
Если СозданиеНовогоЭлемента Или Модифицированность Тогда
Если Записать() Тогда
ПроверкаПараметров = Ложь;
Закрыть();
Иначе
Возврат;
КонецЕсли;
Иначе
ПроверкаПараметров = Ложь;
Закрыть();
КонецЕсли;
Если Объект.ТипОборудования = ПредопределенноеЗначение("Перечисление.ТипыПодключаемогоОборудования.ОблачнаяККТ") Тогда
МодульОблачныеКассы = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ОблачныеКассыКлиент");
МодульОблачныеКассы.НастройкаПодключения(Объект.Ссылка);
Иначе
МенеджерОборудованияКлиент.ВыполнитьНастройкуОборудования(Объект.Ссылка);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура РегистрацияФискальногоНакопителя(Команда)
ОперацияФискальногоНакопителя(1);
КонецПроцедуры
&НаКлиенте
Процедура ИзменениеПараметровРегистрацииФискальногоНакопителя(Команда)
ОперацияФискальногоНакопителя(2);
КонецПроцедуры
&НаКлиенте
Процедура ЗакрытиеФискальногоНакопителя(Команда)
ОперацияФискальногоНакопителя(3);
КонецПроцедуры
&НаКлиенте
Процедура ПерейтиНаСайтИнструкцииНажатие(Элемент)
АдресЗагрузки = "https://its.1c.ru/db/metod81#browse:13:-1:2115:2511";
ОткрытьНавигационнуюСсылку(АдресЗагрузки);
КонецПроцедуры
&НаКлиенте
Процедура СообщениеИнфоПисьмоОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
АдресЗагрузки = "https://its.1c.ru/bmk/envd_kkt";
ОткрытьНавигационнуюСсылку(АдресЗагрузки);
КонецПроцедуры
&НаКлиенте
Процедура СообщениеВТехническуюПоддержку(Команда)
Если СозданиеНовогоЭлемента Или Модифицированность Тогда
Записать();
КонецЕсли;
ИдентификаторОборудования = Объект.Ссылка;
Если МенеджерОборудованияВызовСервера.ДрайверПоставляетсяВКонфигурации(ИдентификаторОборудования) Тогда
МодульСообщенияВСлужбуТехническойПоддержкиБПОКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("СообщенияВСлужбуТехническойПоддержкиБПОКлиент");
ПараметрыДляСообщения = МодульСообщенияВСлужбуТехническойПоддержкиБПОКлиент.ПараметрыОтправкиСообщенияОбОшибке();
ПараметрыДляСообщения.ИдентификаторОборудования = ИдентификаторОборудования;
ПараметрыДляСообщения.ТекстОшибки = НСтр("ru = 'Информация для тех.поддержки'");
ОписаниеОповещения = Новый ОписаниеОповещения("СообщениеВТехническуюПоддержкуЗавершение", ЭтотОбъект);
МодульСообщенияВСлужбуТехническойПоддержкиБПОКлиент.НачатьОтправкуСообщенияОбОшибке(ОписаниеОповещения, ПараметрыДляСообщения);
Иначе
ТекстСообщения = НСтр("ru = 'Обратитесь, пожалуйста, за помощью к поставщику драйвера.'");
ПоказатьПредупреждение(, ТекстСообщения);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура СообщениеВТехническуюПоддержкуЗавершение(Результат, ДополнительныеПараметры) Экспорт
Если Не ПустаяСтрока(Результат.КодОшибки) Тогда
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(Результат.СообщениеОбОшибке);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОперацииСОборудованием(Команда)
МенеджерОборудованияКлиент.ОткрытьОперацииСОборудованием(Объект.Ссылка);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаСервере
Процедура ОбновитьИнтерфейсФормы();
ТипОборудованияККТ = Объект.ТипОборудования = Перечисления.ТипыПодключаемогоОборудования.ККТ;
ТипОборудованияФР = Объект.ТипОборудования = Перечисления.ТипыПодключаемогоОборудования.ФискальныйРегистратор;
ТипОборудованияПЧ = Объект.ТипОборудования = Перечисления.ТипыПодключаемогоОборудования.ПринтерЧеков;
ТипОборудованияОблачнаяККТ = Объект.ТипОборудования = Перечисления.ТипыПодключаемогоОборудования.ОблачнаяККТ;
ОрганизацияВидимость = ТипОборудованияККТ Или ТипОборудованияФР Или ТипОборудованияПЧ Или ТипОборудованияОблачнаяККТ;
Элементы.ФискальныеДанные.Видимость = ТипОборудованияККТ И НЕ СозданиеНовогоЭлемента;
Если Элементы.ФискальныеДанные.Видимость Или Элементы.ОграничениеДоступа.Видимость Тогда
Элементы.Закладки.ОтображениеСтраниц = ОтображениеСтраницФормы.ЗакладкиСверху
Иначе
Элементы.Закладки.ОтображениеСтраниц = ОтображениеСтраницФормы.Нет;
КонецЕсли;
Элементы.Организация.Видимость = ОрганизацияВидимость;
Если Объект.ПометкаУдаления Или Не Объект.УстройствоИспользуется Тогда
Элементы.ПараметрыПодключения.Доступность = Ложь;
Иначе
Элементы.ПараметрыПодключения.Доступность = Истина;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОперацияФискальногоНакопителя_Завершение(РезультатВыполнения, Параметры) Экспорт
ОчиститьСообщения();
Если РезультатВыполнения.Результат Тогда
ТекстСообщения = НСтр("ru='Операция завершена.'");
Иначе
ТекстСообщения = РезультатВыполнения.ОписаниеОшибки;
КонецЕсли;
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ТекстСообщения);
КонецПроцедуры
&НаКлиенте
Процедура ОперацияФискальногоНакопителя_Продолжить(РезультатВыполнения, Параметры) Экспорт
Если РезультатВыполнения <> Неопределено
И ТипЗнч(РезультатВыполнения) = Тип("Структура")
И ОбщегоНазначенияБПОКлиент.ИспользуетсяЧекопечатающиеУстройства() Тогда
ФискальноеУстройство = Объект.Ссылка;
ОповещениеПриЗавершении = Новый ОписаниеОповещения("ОперацияФискальногоНакопителя_Завершение", ЭтотОбъект);
МодульОборудованиеЧекопечатающиеУстройстваКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ОборудованиеЧекопечатающиеУстройстваКлиент");
МодульОборудованиеЧекопечатающиеУстройстваКлиент.НачатьОперациюФНДляФискальногоУстройства(ОповещениеПриЗавершении,
УникальныйИдентификатор, ФискальноеУстройство, РезультатВыполнения);
КонецЕсли;
ЭтотОбъект.Прочитать();
КонецПроцедуры
&НаКлиенте
Процедура ОперацияФискальногоНакопителя(ТипОперации)
#Если ВебКлиент Тогда
ПоказатьПредупреждение(, НСтр("ru='Данный функционал доступен только в режиме тонкого и толстого клиента.'"));
Возврат;
#КонецЕсли
ФискальноеУстройство = Объект.Ссылка;
Если Не ЗначениеЗаполнено(ФискальноеУстройство) Тогда
Возврат;
КонецЕсли;
МодульОборудованиеЧекопечатающиеУстройстваКлиент =
ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ОборудованиеЧекопечатающиеУстройстваКлиент");
ПараметрыОткрытия =
МодульОборудованиеЧекопечатающиеУстройстваКлиент.ПараметрыФормаНастройкиРегистрацииККТ();
ПараметрыОткрытия.ФискальноеУстройство = ФискальноеУстройство;
ПараметрыОткрытия.Организация = Объект.Организация;
ПараметрыОткрытия.ТипОперации = ТипОперации;
ОповещениеПриЗавершении = Новый ОписаниеОповещения("ОперацияФискальногоНакопителя_Продолжить", ЭтотОбъект);
МодульОборудованиеЧекопечатающиеУстройстваКлиент
.ОткрытьФормуНастройкиРегистрацииККТ(ОповещениеПриЗавершении, ПараметрыОткрытия);
КонецПроцедуры
&НаСервере
Процедура ЗаполнитьСписокДрайверов()
Если ОбщегоНазначенияБПО.ИспользуютсяОблачныеККТ() Тогда
ТипОборудованияОблачнаяККТ = Объект.ТипОборудования = Перечисления.ТипыПодключаемогоОборудования.ОблачнаяККТ;
Элементы.ДрайверОборудования.СписокВыбора.Очистить();
Элементы.ДрайверОборудования.Видимость = НЕ ТипОборудованияОблачнаяККТ;
// ++ Локализация
Если ТипОборудованияОблачнаяККТ Тогда
Если ЗначениеЗаполнено(Справочники.ДрайверыОборудования.ПредопределенныйЭлемент("Справочник.ДрайверыОборудования.ОбработчикОблачныхККТ")) Тогда
Объект.ДрайверОборудования = ПредопределенноеЗначение("Справочник.ДрайверыОборудования.ОбработчикОблачныхККТ");
Возврат;
КонецЕсли;
КонецЕсли;
// -- Локализация
КонецЕсли;
ДрайвераОборудования = МенеджерОборудования.ДрайверыПоТипуОборудования(Объект.ТипОборудования);
Для Каждого ДрайверОборудования Из ДрайвераОборудования Цикл
Элементы.ДрайверОборудования.СписокВыбора.Добавить(ДрайверОборудования.Значение, ДрайверОборудования.Представление);
КонецЦикла;
Объект.ДрайверОборудования = ПредопределенноеЗначение("Справочник.ДрайверыОборудования.ПустаяСсылка");
Объект.Наименование = "";
КонецПроцедуры
&НаКлиенте
Процедура ОткрытьНавигационнуюСсылку(НавигационнаяСсылка, Знач Оповещение = Неопределено)
#Если ТолстыйКлиентОбычноеПриложение Тогда
// Особенность платформы: ПерейтиПоНавигационнойСсылке не доступен в толстом клиенте обычного приложения.
ОповещениеПриЗавершении = Новый ОписаниеОповещения();
НачатьЗапускПриложения(ОповещениеПриЗавершении, НавигационнаяСсылка); // АПК:534 передаются фиксированные строки
#Иначе
ПерейтиПоНавигационнойСсылке(НавигационнаяСсылка); // АПК:534 передаются фиксированные строки
#КонецЕсли
КонецПроцедуры
&НаСервере
Процедура УстановитьВидимостьОрганизацииНаСервере()
Элементы.Организация.Видимость = ОрганизацияВидимость;
КонецПроцедуры
&НаКлиенте
Процедура ЗагрузитьССайтаИТС(Команда)
// Вставить содержимое обработчика.
Если СозданиеНовогоЭлемента Или Модифицированность Тогда
Записать();
КонецЕсли;
Оповещение = Новый ОписаниеОповещения("ЗагрузитьССайтаИТСЗавершение", ЭтотОбъект);
МенеджерОборудованияКлиент.УстановитьДрайверОборудования(Оповещение, Объект.ДрайверОборудования);
КонецПроцедуры
&НаКлиенте
Процедура ЗагрузитьССайтаИТСЗавершение(РезультатВыполнения, ДополнительныеПараметры) Экспорт
Если РезультатВыполнения.Результат Тогда
Заголовок = НСтр("ru = 'Компонента загружена.'");
Текст = СтрШаблон(НСтр("ru = 'Компонента %1 успешно загружена и установлена.'"),
РезультатВыполнения.ИдентификаторУстройства);
Иначе
Заголовок = НСтр("ru = 'Ошибка загрузки компоненты.'");
Текст = СтрШаблон(НСтр("ru = 'Компонента %1 не загружена, по причине:
|%2.'"),
РезультатВыполнения.ИдентификаторУстройства,
РезультатВыполнения.ОписаниеОшибки);
КонецЕсли;
ПоказатьПредупреждение(,Текст,,Заголовок);
КонецПроцедуры
&НаСервереБезКонтекста
Процедура ОпределитьВозможностьОтключенияОборудования(ПодключаемоеОборудование, ВыдаватьПредупреждение, ТекстПредупреждения)
СтандартнаяОбработка = Истина;
МенеджерОборудованияВызовСервераПереопределяемый.ОпределитьВозможностьОтключенияОборудования(
ПодключаемоеОборудование, ВыдаватьПредупреждение, ТекстПредупреждения, СтандартнаяОбработка);
Если СтандартнаяОбработка Тогда
ВыдаватьПредупреждение = Истина;
КонецЕсли;
КонецПроцедуры
&НаСервереБезКонтекста
Процедура ДобавитьДрайверВСправочникВнешнихКомпонентИзМакета(СсылкаНаДрайвер)
Если Не ОбщегоНазначенияБПО.ПодсистемаСуществует("СтандартныеПодсистемы.ВнешниеКомпоненты") Тогда
Возврат
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ТипОборудованияНачалоВыбора(Элемент, ДанныеВыбора, ВыборДобавлением, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ДанныеВыбора = Новый СписокЗначений();
ЗаполнитьДоступныеТипыОборудования(ДанныеВыбора, Объект.ТипПодключения);
КонецПроцедуры
&НаСервереБезКонтекста
Процедура ЗаполнитьДоступныеТипыОборудования(ДанныеВыбора, ТипПодключения)
Если ТипПодключения = Перечисления.ТипыПодключенияОборудования.ОбщийДоступ Тогда
ДоступныеТипыОборудования = МенеджерОборудования.ДоступныеТипыОбщедоступногоОборудования();
Иначе
ДоступныеТипыОборудования = МенеджерОборудования.ДоступныеТипыОборудования();
КонецЕсли;
Для Каждого Тип Из ДоступныеТипыОборудования Цикл
ДанныеВыбора.Добавить(Тип);
КонецЦикла;
КонецПроцедуры
// СтандартныеПодсистемы.ПодключаемыеКоманды
&НаКлиенте
Процедура Подключаемый_ВыполнитьКоманду(Команда)
// Вызов БСП
Если ОбщегоНазначенияБПОКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ПодключаемыеКоманды") Тогда
МодульПодключаемыеКомандыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ПодключаемыеКомандыКлиент");
МодульПодключаемыеКомандыКлиент.НачатьВыполнениеКоманды(ЭтотОбъект, Команда, Объект);
КонецЕсли;
// Конец Вызов БСП
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ПродолжитьВыполнениеКомандыНаСервере(ПараметрыВыполнения, ДополнительныеПараметры)
ВыполнитьКомандуНаСервере(ПараметрыВыполнения);
КонецПроцедуры
&НаСервере
Процедура ВыполнитьКомандуНаСервере(ПараметрыВыполнения)
// Вызов БСП
Если ОбщегоНазначенияБПО.ПодсистемаСуществует("СтандартныеПодсистемы.ПодключаемыеКоманды") Тогда
МодульПодключаемыеКоманды = ОбщегоНазначенияБПО.ОбщийМодуль("ПодключаемыеКоманды");
МодульПодключаемыеКоманды.ВыполнитьКоманду(ЭтотОбъект, ПараметрыВыполнения, Объект);
КонецЕсли;
// Конец Вызов БСП
КонецПроцедуры
&НаКлиенте
Процедура Подключаемый_ОбновитьКоманды()
// Вызов БСП
Если ОбщегоНазначенияБПОКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ПодключаемыеКоманды") Тогда
МодульПодключаемыеКомандыКлиентСервер = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ПодключаемыеКомандыКлиентСервер");
МодульПодключаемыеКомандыКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Объект);
КонецЕсли;
// Конец Вызов БСП
КонецПроцедуры
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
#КонецОбласти

View File

@ -0,0 +1,16 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Template uuid="d2447ec9-9bb4-4f4f-8356-2386a9eae779">
<Properties>
<Name>МакетДляОпределенияКоэффициентовЕдиницИзмерения</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Макет для определения коэффициентов единиц измерения</v8:content>
</v8:item>
</Synonym>
<Comment/>
<TemplateType>SpreadsheetDocument</TemplateType>
</Properties>
</Template>
</MetaDataObject>

View File

@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8"?>
<document xmlns="http://v8.1c.ru/8.2/data/spreadsheet" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<languageSettings>
<currentLanguage>ru</currentLanguage>
<defaultLanguage>ru</defaultLanguage>
<languageInfo>
<id>ru</id>
<code>Русский</code>
<description>Русский</description>
</languageInfo>
</languageSettings>
<columns>
<size>6</size>
<columnsItem>
<index>0</index>
<column>
<formatIndex>1</formatIndex>
</column>
</columnsItem>
</columns>
<rowsItem>
<index>0</index>
<row>
<formatIndex>2</formatIndex>
<empty>true</empty>
</row>
</rowsItem>
<drawing>
<drawingType>Picture</drawingType>
<id>2</id>
<formatIndex>0</formatIndex>
<beginRow>1</beginRow>
<beginRowOffset>2</beginRowOffset>
<endRow>7</endRow>
<endRowOffset>29</endRowOffset>
<beginColumn>1</beginColumn>
<beginColumnOffset>2</beginColumnOffset>
<endColumn>2</endColumn>
<endColumnOffset>113</endColumnOffset>
<autoSize>false</autoSize>
<pictureSize>Stretch</pictureSize>
<zOrder>1</zOrder>
<pictureIndex>1</pictureIndex>
</drawing>
<templateMode>true</templateMode>
<defaultFormatIndex>1</defaultFormatIndex>
<height>10</height>
<vgRows>10</vgRows>
<namedItem xsi:type="NamedItemDrawing">
<name>Квадрат100Пикселей</name>
<drawingID>2</drawingID>
</namedItem>
<format>
<width>72</width>
</format>
<format>
<height>44</height>
</format>
<picture>
<index>0</index>
<picture t="false">iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAIAAAD/gAIDAAAAAXNSR0IArs4c6QAA
AARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACbSURBVHhe7dAB
DQAAAMKg909tDjeIQGHAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwY
MGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDA
gAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgIGf
gQF1lAABwOm9ewAAAABJRU5ErkJggg==</picture>
</picture>
</document>

View File

@ -0,0 +1,689 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Catalog uuid="616983be-4432-4929-82ef-c87f51bd3eb4">
<InternalInfo>
<xr:GeneratedType name="CatalogObject.РабочиеМеста" category="Object">
<xr:TypeId>6a449d7a-258e-4deb-898c-1e55c6a0364c</xr:TypeId>
<xr:ValueId>43851c6b-8fe1-4c67-9339-d832772aaf05</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogRef.РабочиеМеста" category="Ref">
<xr:TypeId>d43e4db6-9f89-42c1-bbe0-f19de058d831</xr:TypeId>
<xr:ValueId>dc705d3d-df87-45c9-8668-472b23adb48b</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogSelection.РабочиеМеста" category="Selection">
<xr:TypeId>5441e50c-6bdc-4e46-93d6-7dae8f0dda76</xr:TypeId>
<xr:ValueId>d61f49d3-286c-40b0-89d6-ac524f0c340e</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogList.РабочиеМеста" category="List">
<xr:TypeId>16d8ec28-1057-4d84-9764-b36ceab1e112</xr:TypeId>
<xr:ValueId>99c06ebf-7644-4a79-8f7f-a01c5ff58ac4</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogManager.РабочиеМеста" category="Manager">
<xr:TypeId>d5ccad38-4e3f-49bb-9be4-9cef0418ab13</xr:TypeId>
<xr:ValueId>3eaf7fb2-8756-4219-a623-0a95938a3cae</xr:ValueId>
</xr:GeneratedType>
</InternalInfo>
<Properties>
<Name>РабочиеМеста</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Рабочие места</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Hierarchical>false</Hierarchical>
<HierarchyType>HierarchyFoldersAndItems</HierarchyType>
<LimitLevelCount>false</LimitLevelCount>
<LevelCount>2</LevelCount>
<FoldersOnTop>true</FoldersOnTop>
<UseStandardCommands>true</UseStandardCommands>
<Owners/>
<SubordinationUse>ToItems</SubordinationUse>
<CodeLength>50</CodeLength>
<DescriptionLength>100</DescriptionLength>
<CodeType>String</CodeType>
<CodeAllowedLength>Variable</CodeAllowedLength>
<CodeSeries>WholeCatalog</CodeSeries>
<CheckUnique>false</CheckUnique>
<Autonumbering>false</Autonumbering>
<DefaultPresentation>AsDescription</DefaultPresentation>
<StandardAttributes>
<xr:StandardAttribute name="PredefinedDataName">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Predefined">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Ref">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="DeletionMark">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="IsFolder">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Owner">
<xr:LinkByType/>
<xr:FillChecking>ShowError</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>true</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>Deny</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Parent">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>true</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Description">
<xr:LinkByType/>
<xr:FillChecking>ShowError</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование рабочего места.</v8:content>
</v8:item>
</xr:ToolTip>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
<xr:StandardAttribute name="Code">
<xr:LinkByType/>
<xr:FillChecking>ShowError</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Имя компьютера (рабочего места).</v8:content>
</v8:item>
</xr:ToolTip>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Имя компьютера</v8:content>
</v8:item>
</xr:Synonym>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
</StandardAttributes>
<Characteristics/>
<PredefinedDataUpdate>Auto</PredefinedDataUpdate>
<EditType>InDialog</EditType>
<QuickChoice>false</QuickChoice>
<ChoiceMode>FromForm</ChoiceMode>
<InputByString>
<xr:Field>Catalog.РабочиеМеста.StandardAttribute.Description</xr:Field>
<xr:Field>Catalog.РабочиеМеста.StandardAttribute.Code</xr:Field>
</InputByString>
<SearchStringModeOnInputByString>Begin</SearchStringModeOnInputByString>
<FullTextSearchOnInputByString>DontUse</FullTextSearchOnInputByString>
<ChoiceDataGetModeOnInputByString>Directly</ChoiceDataGetModeOnInputByString>
<DefaultObjectForm>Catalog.РабочиеМеста.Form.ФормаЭлемента</DefaultObjectForm>
<DefaultFolderForm/>
<DefaultListForm>Catalog.РабочиеМеста.Form.ФормаСписка</DefaultListForm>
<DefaultChoiceForm>Catalog.РабочиеМеста.Form.ФормаВыбора</DefaultChoiceForm>
<DefaultFolderChoiceForm/>
<AuxiliaryObjectForm/>
<AuxiliaryFolderForm/>
<AuxiliaryListForm/>
<AuxiliaryChoiceForm/>
<AuxiliaryFolderChoiceForm/>
<IncludeHelpInContents>true</IncludeHelpInContents>
<BasedOn/>
<DataLockFields/>
<DataLockControlMode>Managed</DataLockControlMode>
<FullTextSearch>Use</FullTextSearch>
<ObjectPresentation>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Рабочее место</v8:content>
</v8:item>
</ObjectPresentation>
<ExtendedObjectPresentation/>
<ListPresentation/>
<ExtendedListPresentation/>
<Explanation/>
<CreateOnInput>DontUse</CreateOnInput>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<DataHistory>DontUse</DataHistory>
<UpdateDataHistoryImmediatelyAfterWrite>false</UpdateDataHistoryImmediatelyAfterWrite>
<ExecuteAfterWriteDataHistoryVersionProcessing>false</ExecuteAfterWriteDataHistoryVersionProcessing>
</Properties>
<ChildObjects>
<Attribute uuid="722591b6-f18d-4618-95ec-284bf321eea6">
<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>50</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Имя компьютера, для которого настраивается рабочее место.</v8:content>
</v8:item>
</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>Index</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<Attribute uuid="e08fdde8-12e4-4644-b38a-82415c2780f9">
<Properties>
<Name>ЛокальноеУстройство</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Локальное устройство</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</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>true</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>
<Attribute uuid="fe1a67f4-234e-4301-9651-794b1074a16e">
<Properties>
<Name>MACАдрес</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>MACАдрес</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>30</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>Index</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
<TabularSection uuid="e7cf60ec-1f44-4cf7-9bfb-90863fb079b8">
<InternalInfo>
<xr:GeneratedType name="CatalogTabularSection.РабочиеМеста.ИдентификаторыКлиентов" category="TabularSection">
<xr:TypeId>ccd94c73-5dab-4e7e-ad69-c17c37a505f1</xr:TypeId>
<xr:ValueId>e5ea7083-26fd-4150-935b-96e31e77fc61</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogTabularSectionRow.РабочиеМеста.ИдентификаторыКлиентов" category="TabularSectionRow">
<xr:TypeId>d4ec7f72-acb2-44cf-a196-1700ac31db54</xr:TypeId>
<xr:ValueId>e623e17d-4f24-411e-8ae9-00b78f45f5a9</xr:ValueId>
</xr:GeneratedType>
</InternalInfo>
<Properties>
<Name>ИдентификаторыКлиентов</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Идентификаторы клиентов</v8:content>
</v8:item>
</Synonym>
<Comment/>
<ToolTip/>
<FillChecking>DontCheck</FillChecking>
<StandardAttributes>
<xr:StandardAttribute name="LineNumber">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
</StandardAttributes>
<Use>ForItem</Use>
<LineNumberLength>5</LineNumberLength>
</Properties>
<ChildObjects>
<Attribute uuid="7e0874a3-f5f5-48ca-9efb-31ce9679530e">
<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>50</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"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Indexing>Index</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
</ChildObjects>
</TabularSection>
<TabularSection uuid="1308c5bc-0750-43ee-9fa2-59e1c8b9f923">
<InternalInfo>
<xr:GeneratedType name="CatalogTabularSection.РабочиеМеста.MACАдреса" category="TabularSection">
<xr:TypeId>501ee1d0-af50-4cb4-9d79-e23e1e628d1f</xr:TypeId>
<xr:ValueId>46228ce5-9a1b-42b2-b3b7-2e992fd9e62e</xr:ValueId>
</xr:GeneratedType>
<xr:GeneratedType name="CatalogTabularSectionRow.РабочиеМеста.MACАдреса" category="TabularSectionRow">
<xr:TypeId>7782c1b9-892d-4347-87a4-7b041de43c30</xr:TypeId>
<xr:ValueId>1649937f-b66a-49e3-9f2b-37c819880f43</xr:ValueId>
</xr:GeneratedType>
</InternalInfo>
<Properties>
<Name>MACАдреса</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>MACАдреса</v8:content>
</v8:item>
</Synonym>
<Comment/>
<ToolTip/>
<FillChecking>DontCheck</FillChecking>
<StandardAttributes>
<xr:StandardAttribute name="LineNumber">
<xr:LinkByType/>
<xr:FillChecking>DontCheck</xr:FillChecking>
<xr:MultiLine>false</xr:MultiLine>
<xr:FillFromFillingValue>false</xr:FillFromFillingValue>
<xr:CreateOnInput>Auto</xr:CreateOnInput>
<xr:TypeReductionMode>TransformValues</xr:TypeReductionMode>
<xr:MaxValue xsi:nil="true"/>
<xr:ToolTip/>
<xr:ExtendedEdit>false</xr:ExtendedEdit>
<xr:Format/>
<xr:ChoiceForm/>
<xr:QuickChoice>Auto</xr:QuickChoice>
<xr:ChoiceHistoryOnInput>Auto</xr:ChoiceHistoryOnInput>
<xr:EditFormat/>
<xr:PasswordMode>false</xr:PasswordMode>
<xr:DataHistory>Use</xr:DataHistory>
<xr:MarkNegatives>false</xr:MarkNegatives>
<xr:MinValue xsi:nil="true"/>
<xr:Synonym/>
<xr:Comment/>
<xr:FullTextSearch>Use</xr:FullTextSearch>
<xr:ChoiceParameterLinks/>
<xr:FillValue xsi:nil="true"/>
<xr:Mask/>
<xr:ChoiceParameters/>
</xr:StandardAttribute>
</StandardAttributes>
<Use>ForItem</Use>
<LineNumberLength>5</LineNumberLength>
</Properties>
<ChildObjects>
<Attribute uuid="02deb1bb-06fe-417c-aa08-b52b1f72f4a6">
<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>30</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"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
<Indexing>DontIndex</Indexing>
<FullTextSearch>Use</FullTextSearch>
<DataHistory>Use</DataHistory>
</Properties>
</Attribute>
</ChildObjects>
</TabularSection>
<Form>ФормаЭлемента</Form>
<Form>ФормаСписка</Form>
<Form>ФормаВыбора</Form>
</ChildObjects>
</Catalog>
</MetaDataObject>

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<Help xmlns="http://v8.1c.ru/8.3/xcf/extrnprops" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.21">
<Page>ru</Page>
</Help>

View File

@ -0,0 +1,3 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html;charset=utf-8" http-equiv="content-type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.10570.1001"></meta></head><body>
<h2 style="color: #1f4e79">Рабочие места</h2>
<p class="Usual">Список существующих рабочих мест. Рабочее место создается для данного компьютера и данного пользователя операционной системы. К рабочему месту осуществляется привязка подключаемого оборудования. </p></body></html>

View File

@ -0,0 +1,129 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
// СтандартныеПодсистемы.УправлениеДоступом
// См. УправлениеДоступомПереопределяемый.ПриЗаполненииСписковСОграничениемДоступа.
//
// Параметры:
// Ограничение - Структура:
// * Текст - Строка - ограничение доступа для пользователей.
// Если пустая строка, значит, доступ разрешен.
// * ТекстДляВнешнихПользователей - Строка - ограничение доступа для внешних пользователей.
// Если пустая строка, значит, доступ запрещен.
// * ПоВладельцуБезЗаписиКлючейДоступа - Неопределено - определить автоматически.
// - Булево - если Ложь, то всегда записывать ключи доступа,
// если Истина, тогда не записывать ключи доступа,
// а использовать ключи доступа владельца (требуется,
// чтобы ограничение было строго по объекту-владельцу).
// * ПоВладельцуБезЗаписиКлючейДоступаДляВнешнихПользователей - Неопределено, Булево - также
// как у параметра ПоВладельцуБезЗаписиКлючейДоступа.
//
Процедура ПриЗаполненииОграниченияДоступа(Ограничение) Экспорт
Менеджер = "Справочник.РабочиеМеста";
МенеджерОборудованияВызовСервераПереопределяемый.ПриЗаполненииОграниченияДоступа(Менеджер, Ограничение);
КонецПроцедуры
// Конец СтандартныеПодсистемы.УправлениеДоступом
#КонецОбласти
#Область СлужебныйПрограммныйИнтерфейс
#Область ИнтерфейсРабочегоПроцесса
// Возвращает массив реквизитов недоступных для источника рабочего процесса.
//
// Параметры:
// * ТипДействия - Строка, ПеречислениеСсылка, Неопределено- Тип действия для вычисления недоступных реквизитов.
//
// Возвращаемое значение:
// Массив из Строка -
//
Функция РеквизитыНедоступныеДляИсточникаРабочегоПроцесса(ТипДействия = Неопределено) Экспорт
НедоступныеРеквизиты = Новый Массив;
Возврат НедоступныеРеквизиты;
КонецФункции
#КонецОбласти
#Область ШаблоныСообщений
// Вызывается при подготовке шаблонов сообщений и позволяет переопределить список реквизитов и вложений.
//
// Параметры:
// Реквизиты - ДеревоЗначений - список реквизитов шаблона:
// * Имя - Строка - Уникальное имя общего реквизита.
// * Представление - Строка - Представление общего реквизита.
// * Тип - Тип - Тип реквизита. По умолчанию строка.
// * Формат - Строка - Формат вывода значения для чисел, дат, строк и булевых значений.
// Вложения - ТаблицаЗначений - печатные формы и вложения:
// * Имя - Строка - Уникальное имя вложения.
// * Представление - Строка - Представление варианта.
// * ТипФайла - Строка - Тип вложения, который соответствует расширению файла: "pdf", "png", "jpg", mxl"
// и др.
// ДополнительныеПараметры - Структура - дополнительные сведения о шаблоне сообщений.
//
Процедура ПриПодготовкеШаблонаСообщения(Реквизиты, Вложения, ДополнительныеПараметры) Экспорт
КонецПроцедуры
// Вызывается в момент создания сообщений по шаблону для заполнения значений реквизитов и вложений.
//
// Параметры:
// Сообщение - Структура - структура с ключами:
// * ЗначенияРеквизитов - Соответствие из КлючИЗначение - список используемых в шаблоне реквизитов.
// Ключ - Строка - имя реквизита в шаблоне;
// Значение - Строка - значение заполнения в шаблоне.
// * ЗначенияОбщихРеквизитов - Соответствие из КлючИЗначение - список используемых в шаблоне общих реквизитов.
// Ключ - Строка - имя реквизита в шаблоне;
// Значение - Строка - значение заполнения в шаблоне.
// * Вложения - Соответствие из КлючИЗначение - значения реквизитов
// Ключ - Строка - имя вложения в шаблоне;
// Значение - ДвоичныеДанные, Строка - двоичные данные или адрес во временном хранилище вложения.
// ПредметСообщения - ЛюбаяСсылка - ссылка на объект являющийся источником данных.
// ДополнительныеПараметры - Структура - Дополнительная информация о шаблоне сообщения.
//
Процедура ПриФормированииСообщения(Сообщение, ПредметСообщения, ДополнительныеПараметры) Экспорт
КонецПроцедуры
// Заполняет список получателей SMS при отправке сообщения сформированного по шаблону.
//
// Параметры:
// ПолучателиSMS - ТаблицаЗначений - список получается SMS:
// * НомерТелефона - Строка - номер телефона, куда будет отправлено сообщение SMS.
// * Представление - Строка - представление получателя сообщения SMS.
// * Контакт - Произвольный - контакт, которому принадлежит номер телефона.
// ПредметСообщения - ЛюбаяСсылка, Структура - ссылка на объект являющийся источником данных, либо структура:
// * Предмет - ЛюбаяСсылка - ссылка на объект являющийся источником данных
// * ПроизвольныеПараметры - Соответствие из КлючИЗначение - заполненный список произвольных параметров.
//
Процедура ПриЗаполненииТелефоновПолучателейВСообщении(ПолучателиSMS, ПредметСообщения) Экспорт
КонецПроцедуры
// Заполняет список получателей письма при отправки сообщения сформированного по шаблону.
//
// Параметры:
// ПолучателиПисьма - ТаблицаЗначений - список получается письма:
// * Адрес - Строка - адрес электронной почты получателя.
// * Представление - Строка - представление получается письма.
// * Контакт - Произвольный - контакт, которому принадлежит адрес электронной почты.
// ПредметСообщения - ЛюбаяСсылка, Структура - ссылка на объект являющийся источником данных, либо структура:
// * Предмет - ЛюбаяСсылка - ссылка на объект являющийся источником данных
// * ПроизвольныеПараметры - Соответствие из КлючИЗначение - заполненный список произвольных параметров.
//
Процедура ПриЗаполненииПочтыПолучателейВСообщении(ПолучателиПисьма, ПредметСообщения) Экспорт
КонецПроцедуры
#КонецОбласти
#КонецОбласти
#КонецЕсли

View File

@ -0,0 +1,23 @@
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий
Процедура ПередЗаписью(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
КонецПроцедуры
Процедура ПриЗаписи(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#КонецЕсли

View File

@ -0,0 +1,22 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Form uuid="e186921e-237a-4fe0-bd88-ed8a5760bbe8">
<Properties>
<Name>ФормаВыбора</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма выбора</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
</Properties>
</Form>
</MetaDataObject>

View File

@ -0,0 +1,185 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<WindowOpeningMode>LockOwner</WindowOpeningMode>
<Group>Vertical</Group>
<CommandSet>
<ExcludedCommand>Abort</ExcludedCommand>
<ExcludedCommand>Cancel</ExcludedCommand>
<ExcludedCommand>Close</ExcludedCommand>
<ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>CustomizeForm</ExcludedCommand>
<ExcludedCommand>Delete</ExcludedCommand>
<ExcludedCommand>DynamicListStandardSettings</ExcludedCommand>
<ExcludedCommand>Help</ExcludedCommand>
<ExcludedCommand>Ignore</ExcludedCommand>
<ExcludedCommand>ListSettings</ExcludedCommand>
<ExcludedCommand>LoadDynamicListSettings</ExcludedCommand>
<ExcludedCommand>No</ExcludedCommand>
<ExcludedCommand>OK</ExcludedCommand>
<ExcludedCommand>OutputList</ExcludedCommand>
<ExcludedCommand>RestoreValues</ExcludedCommand>
<ExcludedCommand>Retry</ExcludedCommand>
<ExcludedCommand>SaveDynamicListSettings</ExcludedCommand>
<ExcludedCommand>SaveValues</ExcludedCommand>
<ExcludedCommand>Yes</ExcludedCommand>
</CommandSet>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<Autofill>false</Autofill>
</AutoCommandBar>
<Events>
<Event name="OnOpen">ПриОткрытии</Event>
</Events>
<ChildItems>
<Table name="Список" id="3">
<Representation>List</Representation>
<CommandBarLocation>None</CommandBarLocation>
<DefaultItem>true</DefaultItem>
<ChoiceMode>true</ChoiceMode>
<RowSelectionMode>Row</RowSelectionMode>
<InitialTreeView>ExpandTopLevel</InitialTreeView>
<EnableStartDrag>true</EnableStartDrag>
<FileDragMode>AsFile</FileDragMode>
<DataPath>Список</DataPath>
<RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath>
<CommandSet>
<ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>CopyToClipboard</ExcludedCommand>
</CommandSet>
<SearchStringLocation>None</SearchStringLocation>
<ViewStatusLocation>None</ViewStatusLocation>
<SearchControlLocation>None</SearchControlLocation>
<AutoRefresh>false</AutoRefresh>
<AutoRefreshPeriod>60</AutoRefreshPeriod>
<Period>
<v8:variant xsi:type="v8:StandardPeriodVariant">Custom</v8:variant>
<v8:startDate>0001-01-01T00:00:00</v8:startDate>
<v8:endDate>0001-01-01T00:00:00</v8:endDate>
</Period>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<RestoreCurrentRow>false</RestoreCurrentRow>
<TopLevelParent xsi:nil="true"/>
<ShowRoot>true</ShowRoot>
<AllowRootChoice>false</AllowRootChoice>
<UpdateOnDataChange>Auto</UpdateOnDataChange>
<AllowGettingCurrentRowURL>true</AllowGettingCurrentRowURL>
<ContextMenu name="СписокКонтекстноеМеню" id="4"/>
<AutoCommandBar name="СписокКоманднаяПанель" id="5">
<Autofill>false</Autofill>
</AutoCommandBar>
<ExtendedTooltip name="СписокРасширеннаяПодсказка" id="6"/>
<SearchStringAddition name="СписокСтрокаПоиска" id="13">
<AdditionSource>
<Item>Список</Item>
<Type>SearchStringRepresentation</Type>
</AdditionSource>
<ContextMenu name="СписокСтрокаПоискаКонтекстноеМеню" id="14"/>
<ExtendedTooltip name="СписокСтрокаПоискаРасширеннаяПодсказка" id="15"/>
</SearchStringAddition>
<ViewStatusAddition name="СписокСостояниеПросмотра" id="16">
<AdditionSource>
<Item>Список</Item>
<Type>ViewStatusRepresentation</Type>
</AdditionSource>
<ContextMenu name="СписокСостояниеПросмотраКонтекстноеМеню" id="17"/>
<ExtendedTooltip name="СписокСостояниеПросмотраРасширеннаяПодсказка" id="18"/>
</ViewStatusAddition>
<SearchControlAddition name="СписокУправлениеПоиском" id="19">
<AdditionSource>
<Item>Список</Item>
<Type>SearchControl</Type>
</AdditionSource>
<ContextMenu name="СписокУправлениеПоискомКонтекстноеМеню" id="20"/>
<ExtendedTooltip name="СписокУправлениеПоискомРасширеннаяПодсказка" id="21"/>
</SearchControlAddition>
<Events>
<Event name="BeforeAddRow">СписокПередНачаломДобавления</Event>
</Events>
<ChildItems>
<LabelField name="Наименование" id="7">
<DataPath>Список.Description</DataPath>
<DefaultItem>true</DefaultItem>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование</v8:content>
</v8:item>
</Title>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="8"/>
<ExtendedTooltip name="НаименованиеРасширеннаяПодсказка" id="9"/>
</LabelField>
<CheckBoxField name="Текущее" id="10">
<DataPath>Список.Текущее</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Текущее</v8:content>
</v8:item>
</Title>
<ContextMenu name="ТекущееКонтекстноеМеню" id="11"/>
<ExtendedTooltip name="ТекущееРасширеннаяПодсказка" id="12"/>
</CheckBoxField>
</ChildItems>
</Table>
</ChildItems>
<Attributes>
<Attribute name="Список" id="1">
<Type>
<v8:Type>cfg:DynamicList</v8:Type>
</Type>
<MainAttribute>true</MainAttribute>
<Settings xsi:type="DynamicList">
<ManualQuery>true</ManualQuery>
<DynamicDataRead>true</DynamicDataRead>
<QueryText>ВЫБРАТЬ
СправочникРабочиеМеста.Ссылка,
СправочникРабочиеМеста.ВерсияДанных,
СправочникРабочиеМеста.ПометкаУдаления,
СправочникРабочиеМеста.Предопределенный,
СправочникРабочиеМеста.Код,
СправочникРабочиеМеста.Наименование,
СправочникРабочиеМеста.ИмяКомпьютера,
ВЫБОР
КОГДА СправочникРабочиеМеста.Ссылка = &amp;ТекущееРабочееМесто ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ
КОНЕЦ КАК Текущее
ИЗ
Справочник.РабочиеМеста КАК СправочникРабочиеМеста</QueryText>
<MainTable>Catalog.РабочиеМеста</MainTable>
<ListSettings>
<dcsset:filter>
<dcsset:viewMode>Normal</dcsset:viewMode>
<dcsset:userSettingID>dfcece9d-5077-440b-b6b3-45a5cb4538eb</dcsset:userSettingID>
</dcsset:filter>
<dcsset:order>
<dcsset:item xsi:type="dcsset:OrderItemField">
<dcsset:field>Текущее</dcsset:field>
<dcsset:orderType>Desc</dcsset:orderType>
</dcsset:item>
<dcsset:item xsi:type="dcsset:OrderItemField">
<dcsset:field>Наименование</dcsset:field>
<dcsset:orderType>Asc</dcsset:orderType>
</dcsset:item>
<dcsset:viewMode>Normal</dcsset:viewMode>
<dcsset:userSettingID>88619765-ccb3-46c6-ac52-38e9c992ebd4</dcsset:userSettingID>
</dcsset:order>
<dcsset:conditionalAppearance>
<dcsset:viewMode>Normal</dcsset:viewMode>
<dcsset:userSettingID>b75fecce-942b-4aed-abc9-e6a02e460fb3</dcsset:userSettingID>
</dcsset:conditionalAppearance>
<dcsset:itemsViewMode>Normal</dcsset:itemsViewMode>
<dcsset:itemsUserSettingID>911b6018-f537-43e8-a417-da56b22f9aec</dcsset:itemsUserSettingID>
</ListSettings>
</Settings>
</Attribute>
<Attribute name="ТекущееРабочееМесто" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Текущее рабочее место</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>cfg:CatalogRef.РабочиеМеста</v8:Type>
</Type>
</Attribute>
</Attributes>
</Form>

View File

@ -0,0 +1,72 @@

#Область ОбработчикиСобытийФормы
&НаКлиенте
Процедура ПриОткрытии(Отказ)
МенеджерОборудованияКлиент.ОбновитьРабочееМестоКлиента();
ТекущееРабочееМесто = МенеджерОборудованияКлиент.РабочееМестоКлиента();
Список.Параметры.УстановитьЗначениеПараметра("ТекущееРабочееМесто", ТекущееРабочееМесто);
КонецПроцедуры
&НаКлиенте
Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр)
ИдентификаторКлиента = МенеджерОборудованияКлиент.ИдентификаторКлиентаДляРабочегоМеста();
РабочееМесто = ПолучитьРабочееМестоПоИдентификаторуКлиента(ИдентификаторКлиента);
Если НЕ РабочееМесто = Неопределено Тогда
Отказ = Истина;
Текст = НСтр("ru='Создание нового рабочего места не требуется.
|Для данного идентификатора клиента оно уже создано.
|Открыть существующее рабочее место?'");
Оповещение = Новый ОписаниеОповещения("СписокПередНачаломДобавленияЗавершение", ЭтотОбъект, РабочееМесто);
ПоказатьВопрос(Оповещение, Текст, РежимДиалогаВопрос.ДаНет);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаКлиенте
Процедура СписокПередНачаломДобавленияЗавершение(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да И Не ПустаяСтрока(Параметры) Тогда
ПоказатьЗначение(, Параметры);
КонецЕсли;
КонецПроцедуры
&НаСервере
Функция ПолучитьРабочееМестоПоИдентификаторуКлиента(Идентификатор)
Результат = Неопределено;
Запрос = Новый Запрос("
|ВЫБРАТЬ
| РабочиеМеста.Ссылка
|ИЗ
| Справочник.РабочиеМеста КАК РабочиеМеста
|ГДЕ
| РабочиеМеста.Код = &Идентификатор");
Запрос.УстановитьПараметр("Идентификатор", Идентификатор);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
Результат = ВыборкаДетальныеЗаписи.Ссылка;
КонецЦикла;
Возврат Результат;
КонецФункции
#КонецОбласти

View File

@ -0,0 +1,22 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Form uuid="c711f573-98cf-429f-b4ab-4e594838f669">
<Properties>
<Name>ФормаСписка</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма списка</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
</Properties>
</Form>
</MetaDataObject>

View File

@ -0,0 +1,257 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<WindowOpeningMode>DontBlock</WindowOpeningMode>
<Group>Vertical</Group>
<VerticalScroll>useIfNecessary</VerticalScroll>
<CommandSet>
<ExcludedCommand>Abort</ExcludedCommand>
<ExcludedCommand>Cancel</ExcludedCommand>
<ExcludedCommand>Close</ExcludedCommand>
<ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>CustomizeForm</ExcludedCommand>
<ExcludedCommand>Delete</ExcludedCommand>
<ExcludedCommand>DynamicListStandardSettings</ExcludedCommand>
<ExcludedCommand>Help</ExcludedCommand>
<ExcludedCommand>Ignore</ExcludedCommand>
<ExcludedCommand>ListSettings</ExcludedCommand>
<ExcludedCommand>LoadDynamicListSettings</ExcludedCommand>
<ExcludedCommand>No</ExcludedCommand>
<ExcludedCommand>OK</ExcludedCommand>
<ExcludedCommand>OutputList</ExcludedCommand>
<ExcludedCommand>RestoreValues</ExcludedCommand>
<ExcludedCommand>Retry</ExcludedCommand>
<ExcludedCommand>SaveDynamicListSettings</ExcludedCommand>
<ExcludedCommand>SaveValues</ExcludedCommand>
<ExcludedCommand>Yes</ExcludedCommand>
</CommandSet>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<Autofill>false</Autofill>
</AutoCommandBar>
<Events>
<Event name="NotificationProcessing">ОбработкаОповещения</Event>
<Event name="OnOpen">ПриОткрытии</Event>
</Events>
<ChildItems>
<Table name="Список" id="1">
<Representation>List</Representation>
<CommandBarLocation>None</CommandBarLocation>
<SkipOnInput>false</SkipOnInput>
<DefaultItem>true</DefaultItem>
<RowSelectionMode>Cell</RowSelectionMode>
<InitialTreeView>ExpandTopLevel</InitialTreeView>
<EnableStartDrag>true</EnableStartDrag>
<FileDragMode>AsFile</FileDragMode>
<DataPath>Список</DataPath>
<RowPictureDataPath>Список.DefaultPicture</RowPictureDataPath>
<CommandSet>
<ExcludedCommand>Copy</ExcludedCommand>
<ExcludedCommand>CopyToClipboard</ExcludedCommand>
</CommandSet>
<SearchStringLocation>None</SearchStringLocation>
<ViewStatusLocation>None</ViewStatusLocation>
<SearchControlLocation>None</SearchControlLocation>
<AutoRefresh>false</AutoRefresh>
<AutoRefreshPeriod>60</AutoRefreshPeriod>
<Period>
<v8:variant xsi:type="v8:StandardPeriodVariant">Custom</v8:variant>
<v8:startDate>0001-01-01T00:00:00</v8:startDate>
<v8:endDate>0001-01-01T00:00:00</v8:endDate>
</Period>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<RestoreCurrentRow>false</RestoreCurrentRow>
<TopLevelParent xsi:nil="true"/>
<ShowRoot>true</ShowRoot>
<AllowRootChoice>false</AllowRootChoice>
<UpdateOnDataChange>Auto</UpdateOnDataChange>
<AllowGettingCurrentRowURL>true</AllowGettingCurrentRowURL>
<ContextMenu name="СписокКонтекстноеМеню" id="2"/>
<AutoCommandBar name="СписокКоманднаяПанель" id="3">
<Autofill>false</Autofill>
</AutoCommandBar>
<ExtendedTooltip name="СписокExtendedTooltip" id="6"/>
<SearchStringAddition name="СписокСтрокаПоиска" id="8">
<AdditionSource>
<Item>Список</Item>
<Type>SearchStringRepresentation</Type>
</AdditionSource>
<ContextMenu name="СписокСтрокаПоискаКонтекстноеМеню" id="9"/>
<ExtendedTooltip name="СписокСтрокаПоискаРасширеннаяПодсказка" id="10"/>
</SearchStringAddition>
<ViewStatusAddition name="СписокСостояниеПросмотра" id="11">
<AdditionSource>
<Item>Список</Item>
<Type>ViewStatusRepresentation</Type>
</AdditionSource>
<ContextMenu name="СписокСостояниеПросмотраКонтекстноеМеню" id="12"/>
<ExtendedTooltip name="СписокСостояниеПросмотраРасширеннаяПодсказка" id="13"/>
</ViewStatusAddition>
<SearchControlAddition name="СписокУправлениеПоиском" id="14">
<AdditionSource>
<Item>Список</Item>
<Type>SearchControl</Type>
</AdditionSource>
<ContextMenu name="СписокУправлениеПоискомКонтекстноеМеню" id="15"/>
<ExtendedTooltip name="СписокУправлениеПоискомРасширеннаяПодсказка" id="16"/>
</SearchControlAddition>
<Events>
<Event name="BeforeAddRow">СписокПередНачаломДобавления</Event>
</Events>
<ChildItems>
<LabelField name="Наименование" id="4">
<DataPath>Список.Наименование</DataPath>
<DefaultItem>true</DefaultItem>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="5"/>
<ExtendedTooltip name="НаименованиеExtendedTooltip" id="7"/>
</LabelField>
<LabelField name="ИмяКомпьютера" id="19">
<DataPath>Список.ИмяКомпьютера</DataPath>
<ContextMenu name="ИмяКомпьютераКонтекстноеМеню" id="20"/>
<ExtendedTooltip name="ИмяКомпьютераРасширеннаяПодсказка" id="21"/>
</LabelField>
</ChildItems>
</Table>
</ChildItems>
<Attributes>
<Attribute name="Список" id="1">
<Type>
<v8:Type>cfg:DynamicList</v8:Type>
</Type>
<MainAttribute>true</MainAttribute>
<Settings xsi:type="DynamicList">
<ManualQuery>true</ManualQuery>
<DynamicDataRead>true</DynamicDataRead>
<QueryText>ВЫБРАТЬ
СправочникРабочиеМеста.Ссылка,
СправочникРабочиеМеста.ВерсияДанных,
СправочникРабочиеМеста.ПометкаУдаления,
СправочникРабочиеМеста.Предопределенный,
СправочникРабочиеМеста.Код,
СправочникРабочиеМеста.Наименование,
СправочникРабочиеМеста.ИмяКомпьютера,
СправочникРабочиеМеста.ЛокальноеУстройство,
ВЫБОР
КОГДА СправочникРабочиеМеста.Ссылка = &amp;ТекущееРабочееМесто ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ
КОНЕЦ КАК Текущее
ИЗ
Справочник.РабочиеМеста КАК СправочникРабочиеМеста
</QueryText>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>ИмяПредопределенныхДанных</dcssch:dataPath>
<dcssch:field>ИмяПредопределенныхДанных</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>ЛокальноеУстройство</dcssch:dataPath>
<dcssch:field>ЛокальноеУстройство</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>Ссылка</dcssch:dataPath>
<dcssch:field>Ссылка</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>Наименование</dcssch:dataPath>
<dcssch:field>Наименование</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>ВерсияДанных</dcssch:dataPath>
<dcssch:field>ВерсияДанных</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>ИмяКомпьютера</dcssch:dataPath>
<dcssch:field>ИмяКомпьютера</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>ПометкаУдаления</dcssch:dataPath>
<dcssch:field>ПометкаУдаления</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>Код</dcssch:dataPath>
<dcssch:field>Код</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>Предопределенный</dcssch:dataPath>
<dcssch:field>Предопределенный</dcssch:field>
</Field>
<Field xsi:type="dcssch:DataSetFieldField">
<dcssch:dataPath>Текущее</dcssch:dataPath>
<dcssch:field>Текущее</dcssch:field>
<dcssch:title xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Текущее</v8:content>
</v8:item>
</dcssch:title>
</Field>
<Parameter>
<dcssch:name>ТекущееРабочееМесто</dcssch:name>
<dcssch:title xsi:type="v8:LocalStringType">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Текущее рабочее место</v8:content>
</v8:item>
</dcssch:title>
<dcssch:valueType>
<v8:Type>cfg:CatalogRef.РабочиеМеста</v8:Type>
</dcssch:valueType>
<dcssch:value xsi:nil="true"/>
<dcssch:useRestriction>true</dcssch:useRestriction>
</Parameter>
<MainTable>Catalog.РабочиеМеста</MainTable>
<ListSettings>
<dcsset:filter>
<dcsset:viewMode>Normal</dcsset:viewMode>
<dcsset:userSettingID>dfcece9d-5077-440b-b6b3-45a5cb4538eb</dcsset:userSettingID>
</dcsset:filter>
<dcsset:order>
<dcsset:item xsi:type="dcsset:OrderItemField">
<dcsset:field>Текущее</dcsset:field>
<dcsset:orderType>Desc</dcsset:orderType>
</dcsset:item>
<dcsset:item xsi:type="dcsset:OrderItemField">
<dcsset:field>Наименование</dcsset:field>
<dcsset:orderType>Asc</dcsset:orderType>
</dcsset:item>
<dcsset:viewMode>Normal</dcsset:viewMode>
<dcsset:userSettingID>88619765-ccb3-46c6-ac52-38e9c992ebd4</dcsset:userSettingID>
</dcsset:order>
<dcsset:conditionalAppearance>
<dcsset:item>
<dcsset:selection>
<dcsset:item>
<dcsset:field>Наименование</dcsset:field>
</dcsset:item>
</dcsset:selection>
<dcsset:filter>
<dcsset:item xsi:type="dcsset:FilterItemComparison">
<dcsset:left xsi:type="dcscor:Field">Текущее</dcsset:left>
<dcsset:comparisonType>Equal</dcsset:comparisonType>
<dcsset:right xsi:type="xs:boolean">true</dcsset:right>
</dcsset:item>
</dcsset:filter>
<dcsset:appearance>
<dcscor:item xsi:type="dcsset:SettingsParameterValue">
<dcscor:parameter>Шрифт</dcscor:parameter>
<dcscor:value xsi:type="v8ui:Font" ref="style:TextFont" bold="true" italic="false" underline="false" strikeout="false" kind="StyleItem"/>
</dcscor:item>
</dcsset:appearance>
</dcsset:item>
<dcsset:viewMode>Normal</dcsset:viewMode>
<dcsset:userSettingID>b75fecce-942b-4aed-abc9-e6a02e460fb3</dcsset:userSettingID>
</dcsset:conditionalAppearance>
<dcsset:itemsViewMode>Normal</dcsset:itemsViewMode>
<dcsset:itemsUserSettingID>911b6018-f537-43e8-a417-da56b22f9aec</dcsset:itemsUserSettingID>
</ListSettings>
</Settings>
</Attribute>
<Attribute name="ТекущееРабочееМесто" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Текущее рабочее место</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>cfg:CatalogRef.РабочиеМеста</v8:Type>
</Type>
</Attribute>
</Attributes>
</Form>

View File

@ -0,0 +1,82 @@

#Область ОбработчикиСобытийФормы
&НаКлиенте
Процедура ПриОткрытии(Отказ)
МенеджерОборудованияКлиент.УстановитьРежимПодключенияРасширенияИнформацииОКомпьютере(Истина);
МенеджерОборудованияКлиент.ОбновитьРабочееМестоКлиента();
ТекущееРабочееМесто = МенеджерОборудованияКлиент.РабочееМестоКлиента();
Список.Параметры.УстановитьЗначениеПараметра("ТекущееРабочееМесто", ТекущееРабочееМесто);
КонецПроцедуры
&НаКлиенте
Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр)
ИдентификаторКлиента = МенеджерОборудованияКлиент.ИдентификаторКлиентаДляРабочегоМеста();
РабочееМесто = ПолучитьРабочееМестоПоИдентификаторуКлиента(ИдентификаторКлиента);
Если НЕ РабочееМесто = Неопределено Тогда
Отказ = Истина;
Текст = НСтр("ru='Создание нового рабочего места не требуется.
|Для данного идентификатора клиента оно уже создано.
|Открыть существующее рабочее место?'");
Оповещение = Новый ОписаниеОповещения("СписокПередНачаломДобавленияЗавершение", ЭтотОбъект, РабочееМесто);
ПоказатьВопрос(Оповещение, Текст, РежимДиалогаВопрос.ДаНет);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если ИмяСобытия = "ИзмененоРабочееМестоТекущегоСеанса" Тогда
ТекущееРабочееМесто = МенеджерОборудованияКлиент.РабочееМестоКлиента();
Список.Параметры.УстановитьЗначениеПараметра("ТекущееРабочееМесто", ТекущееРабочееМесто);
Элементы.Список.Обновить();
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаКлиенте
Процедура СписокПередНачаломДобавленияЗавершение(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да И Не ПустаяСтрока(Параметры) Тогда
ПоказатьЗначение(, Параметры);
КонецЕсли;
КонецПроцедуры
&НаСервере
Функция ПолучитьРабочееМестоПоИдентификаторуКлиента(Идентификатор)
Результат = Неопределено;
Запрос = Новый Запрос("
|ВЫБРАТЬ
| РабочиеМеста.Ссылка
|ИЗ
| Справочник.РабочиеМеста КАК РабочиеМеста
|ГДЕ
| РабочиеМеста.Код = &Идентификатор");
Запрос.УстановитьПараметр("Идентификатор", Идентификатор);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
Результат = ВыборкаДетальныеЗаписи.Ссылка;
КонецЦикла;
Возврат Результат;
КонецФункции
#КонецОбласти

View File

@ -0,0 +1,22 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<Form uuid="74618dab-b5cb-4c8b-9a6c-461b902c92e7">
<Properties>
<Name>ФормаЭлемента</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Форма элемента</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
</Properties>
</Form>
</MetaDataObject>

View File

@ -0,0 +1,182 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Рабочее место</v8:content>
</v8:item>
</Title>
<WindowOpeningMode>LockOwner</WindowOpeningMode>
<Group>Vertical</Group>
<VerticalScroll>useIfNecessary</VerticalScroll>
<UseForFoldersAndItems>Items</UseForFoldersAndItems>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<Autofill>false</Autofill>
<ChildItems>
<Button name="ЗаписатьИЗакрыть" id="38">
<Type>CommandBarButton</Type>
<DefaultButton>true</DefaultButton>
<CommandName>Form.StandardCommand.Close</CommandName>
<ButtonImportance>Main</ButtonImportance>
<ExtendedTooltip name="ЗаписатьИЗакрытьРасширеннаяПодсказка" id="39"/>
</Button>
</ChildItems>
</AutoCommandBar>
<Events>
<Event name="AfterWrite">ПослеЗаписи</Event>
<Event name="OnOpen">ПриОткрытии</Event>
<Event name="BeforeWrite">ПередЗаписью</Event>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
</Events>
<ChildItems>
<InputField name="Наименование" id="1">
<DataPath>Объект.Description</DataPath>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<AutoMaxWidth>false</AutoMaxWidth>
<ChooseType>false</ChooseType>
<ContextMenu name="НаименованиеКонтекстноеМеню" id="2"/>
<ExtendedTooltip name="НаименованиеExtendedTooltip" id="21"/>
<Events>
<Event name="OnChange">НаименованиеПриИзменении</Event>
</Events>
</InputField>
<InputField name="Код" id="17">
<DataPath>Объект.Code</DataPath>
<ReadOnly>true</ReadOnly>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Идентификатор клиента</v8:content>
</v8:item>
</Title>
<AutoMaxWidth>false</AutoMaxWidth>
<ChooseType>false</ChooseType>
<TextEdit>false</TextEdit>
<ContextMenu name="КодКонтекстноеМеню" id="18"/>
<ExtendedTooltip name="КодExtendedTooltip" id="22"/>
</InputField>
<InputField name="ИмяКомпьютера" id="19">
<DataPath>Объект.ИмяКомпьютера</DataPath>
<ReadOnly>true</ReadOnly>
<AutoMaxWidth>false</AutoMaxWidth>
<HorizontalStretch>true</HorizontalStretch>
<ContextMenu name="ИмяКомпьютераКонтекстноеМеню" id="20"/>
<ExtendedTooltip name="ИмяКомпьютераExtendedTooltip" id="24"/>
</InputField>
<Table name="MACАдреса" id="43">
<ReadOnly>true</ReadOnly>
<ChangeRowSet>false</ChangeRowSet>
<ChangeRowOrder>false</ChangeRowOrder>
<RowSelectionMode>Cell</RowSelectionMode>
<UseAlternationRowColorBWA>false</UseAlternationRowColorBWA>
<AutoInsertNewRow>true</AutoInsertNewRow>
<EnableStartDrag>true</EnableStartDrag>
<EnableDrag>true</EnableDrag>
<DataPath>Объект.MACАдреса</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дополнительные MAC-адреса</v8:content>
</v8:item>
</Title>
<RowFilter xsi:nil="true"/>
<ContextMenu name="MACАдресаКонтекстноеМеню" id="44"/>
<AutoCommandBar name="MACАдресаКоманднаяПанель" id="45">
<Autofill>false</Autofill>
</AutoCommandBar>
<ExtendedTooltip name="MACАдресаРасширеннаяПодсказка" id="46"/>
<SearchStringAddition name="MACАдресаСтрокаПоиска" id="47">
<AdditionSource>
<Item>MACАдреса</Item>
<Type>SearchStringRepresentation</Type>
</AdditionSource>
<ContextMenu name="MACАдресаСтрокаПоискаКонтекстноеМеню" id="48"/>
<ExtendedTooltip name="MACАдресаСтрокаПоискаРасширеннаяПодсказка" id="49"/>
</SearchStringAddition>
<ViewStatusAddition name="MACАдресаСостояниеПросмотра" id="50">
<AdditionSource>
<Item>MACАдреса</Item>
<Type>ViewStatusRepresentation</Type>
</AdditionSource>
<ContextMenu name="MACАдресаСостояниеПросмотраКонтекстноеМеню" id="51"/>
<ExtendedTooltip name="MACАдресаСостояниеПросмотраРасширеннаяПодсказка" id="52"/>
</ViewStatusAddition>
<SearchControlAddition name="MACАдресаУправлениеПоиском" id="53">
<AdditionSource>
<Item>MACАдреса</Item>
<Type>SearchControl</Type>
</AdditionSource>
<ContextMenu name="MACАдресаУправлениеПоискомКонтекстноеМеню" id="54"/>
<ExtendedTooltip name="MACАдресаУправлениеПоискомРасширеннаяПодсказка" id="55"/>
</SearchControlAddition>
<ChildItems>
<LabelField name="MACАдресаНомерСтроки" id="56">
<DataPath>Объект.MACАдреса.LineNumber</DataPath>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<ContextMenu name="MACАдресаНомерСтрокиКонтекстноеМеню" id="57"/>
<ExtendedTooltip name="MACАдресаНомерСтрокиРасширеннаяПодсказка" id="58"/>
</LabelField>
<InputField name="MACАдресаАдрес" id="59">
<DataPath>Объект.MACАдреса.Адрес</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>MAC-адрес</v8:content>
</v8:item>
</Title>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<ExtendedEditMultipleValues>true</ExtendedEditMultipleValues>
<ContextMenu name="MACАдресаАдресКонтекстноеМеню" id="60"/>
<ExtendedTooltip name="MACАдресаАдресРасширеннаяПодсказка" id="61"/>
</InputField>
</ChildItems>
</Table>
</ChildItems>
<Attributes>
<Attribute name="Объект" id="1">
<Type>
<v8:Type>cfg:CatalogObject.РабочиеМеста</v8:Type>
</Type>
<MainAttribute>true</MainAttribute>
<SavedData>true</SavedData>
</Attribute>
<Attribute name="ТекущийПользователь" id="4">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Текущий пользователь</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
</Attributes>
<CommandInterface>
<NavigationPanel>
<Item>
<Command>0</Command>
<Type>Auto</Type>
<DefaultVisible>false</DefaultVisible>
<Visible>
<xr:Common>false</xr:Common>
</Visible>
</Item>
<Item>
<Command>3</Command>
<Type>Auto</Type>
<DefaultVisible>false</DefaultVisible>
<Visible>
<xr:Common>false</xr:Common>
</Visible>
</Item>
</NavigationPanel>
</CommandInterface>
</Form>

View File

@ -0,0 +1,146 @@
#Область ОписаниеПеременных
&НаКлиенте
Перем ОтветПередЗаписью;
#КонецОбласти
#Область ОбработчикиСобытийФорм
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// Пропускаем инициализацию, чтобы гарантировать получение формы при передаче параметра "АвтоТест".
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
ТекущийПользователь = ПользователиИнформационнойБазы.ТекущийПользователь();
Если ОбщегоНазначенияБПО.ЭтоМобильнаяПлатформа() Тогда
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.Наименование);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.Код);
ОбщегоНазначенияБПО.ПодготовитьЭлементУправления(Элементы.ИмяКомпьютера);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
Если ПустаяСтрока(Объект.Код) Тогда
Объект.Код = МенеджерОборудованияКлиент.ИдентификаторКлиентаДляРабочегоМеста();
КонецЕсли;
МенеджерОборудованияКлиентСервер.ЗаполнитьНаименованиеРабочегоМеста(Объект, ТекущийПользователь);
КонецПроцедуры
&НаКлиенте
Процедура ПередЗаписью(Отказ, ПараметрыЗаписи)
Если Не ПроверкаУникальностиПоИдентификаторуКлиента(Объект.Ссылка, Объект.Код) Тогда
Отказ = Истина;
Текст = НСтр("ru='Ошибка сохранение рабочего места.
|Рабочее место с таким идентификатором клиента уже существует.'");
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(Текст);
Возврат;
КонецЕсли;
Если Не ПроверкаУникальностиПоНаименованию(Объект.Ссылка, Объект.Наименование)Тогда
Если ОтветПередЗаписью <> Истина Тогда
Отказ = Истина;
Текст = НСтр("ru='Указано неуникальное наименование рабочего места.
|Возможно в дальнейшем это затруднит идентификацию и выбор рабочего места.
|Рекомендуется указывать уникальное наименование рабочих мест.
|Продолжить сохранение с указанным наименованием?'");
Оповещение = Новый ОписаниеОповещения("ПередЗаписьюЗавершение", ЭтотОбъект);
ПоказатьВопрос(Оповещение, Текст, РежимДиалогаВопрос.ДаНет);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПередЗаписьюЗавершение(Результат, Параметры) Экспорт
Если Результат = КодВозвратаДиалога.Да Тогда
ОтветПередЗаписью = Истина;
Записать();
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
Если Объект.Код = МенеджерОборудованияКлиент.ИдентификаторКлиентаДляРабочегоМеста() Тогда
ОбновитьПовторноИспользуемыеЗначения();
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовШапкиФормы
&НаКлиенте
Процедура НаименованиеПриИзменении(Элемент)
МенеджерОборудованияКлиентСервер.ЗаполнитьНаименованиеРабочегоМеста(Объект, ТекущийПользователь);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаСервереБезКонтекста
Функция ПроверкаУникальностиПоНаименованию(Ссылка, Наименование)
Результат = Истина;
Если Не ПустаяСтрока(Наименование) Тогда
Запрос = Новый Запрос("
|ВЫБРАТЬ
| 1
|ИЗ
| Справочник.РабочиеМеста КАК РабочиеМеста
|ГДЕ
| РабочиеМеста.Наименование = &Наименование
| И РабочиеМеста.Ссылка <> &Ссылка
|");
Запрос.УстановитьПараметр("Наименование", Наименование);
Запрос.УстановитьПараметр("Ссылка" , Ссылка);
Результат = Запрос.Выполнить().Пустой();
КонецЕсли;
Возврат Результат;
КонецФункции
&НаСервереБезКонтекста
Функция ПроверкаУникальностиПоИдентификаторуКлиента(Ссылка, ИдентификаторКлиента)
Результат = Истина;
Если Не ПустаяСтрока(ИдентификаторКлиента) Тогда
Запрос = Новый Запрос("
|ВЫБРАТЬ
| 1
|ИЗ
| Справочник.РабочиеМеста КАК РабочиеМеста
|ГДЕ
| РабочиеМеста.Код = &Код
| И РабочиеМеста.Ссылка <> &Ссылка
|");
Запрос.УстановитьПараметр("Код" , ИдентификаторКлиента);
Запрос.УстановитьПараметр("Ссылка" , Ссылка);
Результат = Запрос.Выполнить().Пустой();
КонецЕсли;
Возврат Результат;
КонецФункции
#КонецОбласти

View File

@ -0,0 +1,25 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonCommand uuid="3177a598-c693-4f5e-880e-15d687643cd0">
<Properties>
<Name>ВыбратьРМТекущегоСеанса</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Выбрать рабочее место текущего сеанса</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Group>ActionsPanelTools</Group>
<Representation>Auto</Representation>
<ToolTip/>
<Picture/>
<Shortcut/>
<IncludeHelpInContents>false</IncludeHelpInContents>
<CommandParameterType/>
<ParameterUseMode>Single</ParameterUseMode>
<ModifiesData>false</ModifiesData>
<OnMainServerUnavalableBehavior>Auto</OnMainServerUnavalableBehavior>
</Properties>
</CommonCommand>
</MetaDataObject>

View File

@ -0,0 +1,10 @@
#Область ОбработчикиСобытий
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
МенеджерОборудованияКлиент.ВыбратьРМТекущегоСеанса(ПараметрКоманды, ПараметрыВыполненияКоманды);
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,25 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonCommand uuid="9fd19b62-1fbe-4b85-ae43-bf13cb8f92de">
<Properties>
<Name>ОбновлениеИнформационнойБазыБПО</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Обновление информационной базы БПО</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Group>NavigationPanelImportant</Group>
<Representation>Auto</Representation>
<ToolTip/>
<Picture/>
<Shortcut/>
<IncludeHelpInContents>false</IncludeHelpInContents>
<CommandParameterType/>
<ParameterUseMode>Single</ParameterUseMode>
<ModifiesData>false</ModifiesData>
<OnMainServerUnavalableBehavior>Auto</OnMainServerUnavalableBehavior>
</Properties>
</CommonCommand>
</MetaDataObject>

View File

@ -0,0 +1,18 @@

&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
ОбновлениеИнформационнойБазыБПО();
//ПараметрыФормы = Новый Структура("", );
//ОткрытьФорму("ОбщаяФорма.", ПараметрыФормы, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно, ПараметрыВыполненияКоманды.НавигационнаяСсылка);
КонецПроцедуры
&НаСервере
Процедура ОбновлениеИнформационнойБазыБПО()
#Если НЕ МобильноеПриложениеКлиент Тогда
ИнтеграцияПодсистемБПО.ОбновлениеИнформационнойБазыБПО();
#КонецЕсли
КонецПроцедуры

View File

@ -0,0 +1,29 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonCommand uuid="7e0ebc5f-f8c9-47f9-91f9-fc1976f1d22d">
<Properties>
<Name>РегистрФискальныхОпераций</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Фискальные операции</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Group>ActionsPanelTools</Group>
<Representation>PictureAndText</Representation>
<ToolTip/>
<Picture>
<xr:Ref>0</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
<xr:TransparentPixel x="12" y="2"/>
</Picture>
<Shortcut/>
<IncludeHelpInContents>false</IncludeHelpInContents>
<CommandParameterType/>
<ParameterUseMode>Single</ParameterUseMode>
<ModifiesData>false</ModifiesData>
<OnMainServerUnavalableBehavior>Auto</OnMainServerUnavalableBehavior>
</Properties>
</CommonCommand>
</MetaDataObject>

View File

@ -0,0 +1,10 @@
#Область ОбработчикиСобытий
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
ОткрытьФорму("РегистрСведений.ФискальныеОперации.Форма.ФормаСписка");
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,25 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonCommand uuid="38aec696-418a-4ad0-9456-bb7e446f6427">
<Properties>
<Name>СверкаИтоговПоКартам</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Сверка итогов по картам</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Group>ActionsPanelTools</Group>
<Representation>Auto</Representation>
<ToolTip/>
<Picture/>
<Shortcut/>
<IncludeHelpInContents>false</IncludeHelpInContents>
<CommandParameterType/>
<ParameterUseMode>Single</ParameterUseMode>
<ModifiesData>false</ModifiesData>
<OnMainServerUnavalableBehavior>Auto</OnMainServerUnavalableBehavior>
</Properties>
</CommonCommand>
</MetaDataObject>

View File

@ -0,0 +1,25 @@
#Область ОбработчикиСобытий
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
УникальныйИдентификатор = Новый УникальныйИдентификатор();
ОписаниеОповещения = Новый ОписаниеОповещения("ВыполнитьОперациюЗавершение", ЭтотОбъект);
ОборудованиеПлатежныеСистемыКлиент.НачатьВыполнениеСверкиИтоговНаЭквайринговомТерминале(ОписаниеОповещения, УникальныйИдентификатор)
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьОперациюЗавершение(РезультатВыполнения, Параметры) Экспорт
Если РезультатВыполнения.Результат Тогда
ТекстСообщения = НСтр("ru = 'Операция выполнена успешно.'");
Иначе
ТекстСообщения = РезультатВыполнения.ОписаниеОшибки;
КонецЕсли;
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ТекстСообщения);
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,29 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonCommand uuid="04d2b6e3-46e0-401a-8a4a-6001859a21fd">
<Properties>
<Name>УправлениеФискальнымУстройством</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Управление фискальным устройством</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Group>ActionsPanelTools</Group>
<Representation>PictureAndText</Representation>
<ToolTip/>
<Picture>
<xr:Ref>0</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
<xr:TransparentPixel x="12" y="2"/>
</Picture>
<Shortcut/>
<IncludeHelpInContents>false</IncludeHelpInContents>
<CommandParameterType/>
<ParameterUseMode>Single</ParameterUseMode>
<ModifiesData>false</ModifiesData>
<OnMainServerUnavalableBehavior>Auto</OnMainServerUnavalableBehavior>
</Properties>
</CommonCommand>
</MetaDataObject>

View File

@ -0,0 +1,11 @@
#Область ОбработчикиСобытий
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
ОткрытьФорму("ОбщаяФорма.УправлениеФискальнымУстройством", , ПараметрыВыполненияКоманды.Источник,
ПараметрыВыполненияКоманды.Уникальность,,,, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,29 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonCommand uuid="fd5d9d82-290e-4b1d-9dd3-8de77341f12a">
<Properties>
<Name>УправлениеЭквайринговымТерминалом</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Управление эквайринговым терминалом</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Group>ActionsPanelTools</Group>
<Representation>PictureAndText</Representation>
<ToolTip/>
<Picture>
<xr:Ref>0</xr:Ref>
<xr:LoadTransparent>true</xr:LoadTransparent>
<xr:TransparentPixel x="13" y="1"/>
</Picture>
<Shortcut/>
<IncludeHelpInContents>false</IncludeHelpInContents>
<CommandParameterType/>
<ParameterUseMode>Single</ParameterUseMode>
<ModifiesData>false</ModifiesData>
<OnMainServerUnavalableBehavior>Auto</OnMainServerUnavalableBehavior>
</Properties>
</CommonCommand>
</MetaDataObject>

View File

@ -0,0 +1,10 @@
#Область ОбработчикиСобытий
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
ОткрытьФорму("ОбщаяФорма.УправлениеЭквайринговымТерминалом", , ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность);
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,25 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonForm uuid="d0e170e2-7bfe-4aba-83d3-983927e48574">
<Properties>
<Name>ВопросОбУстановкеРасширенияРаботыСКомпьютеромБПО</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Вопрос об установке расширения для работы с 1С:Предприятием</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
<UseStandardCommands>true</UseStandardCommands>
<ExtendedPresentation/>
<Explanation/>
</Properties>
</CommonForm>
</MetaDataObject>

View File

@ -0,0 +1,136 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Установка расширения для работы с 1С:Предприятием</v8:content>
</v8:item>
</Title>
<WindowOpeningMode>LockOwner</WindowOpeningMode>
<AutoTitle>false</AutoTitle>
<Group>Vertical</Group>
<Customizable>false</Customizable>
<CommandBarLocation>Bottom</CommandBarLocation>
<CommandSet>
<ExcludedCommand>Abort</ExcludedCommand>
<ExcludedCommand>Cancel</ExcludedCommand>
<ExcludedCommand>Close</ExcludedCommand>
<ExcludedCommand>Help</ExcludedCommand>
<ExcludedCommand>Ignore</ExcludedCommand>
<ExcludedCommand>No</ExcludedCommand>
<ExcludedCommand>OK</ExcludedCommand>
<ExcludedCommand>RestoreValues</ExcludedCommand>
<ExcludedCommand>Retry</ExcludedCommand>
<ExcludedCommand>SaveValues</ExcludedCommand>
<ExcludedCommand>Yes</ExcludedCommand>
</CommandSet>
<ShowCommandBar>true</ShowCommandBar>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<HorizontalAlign>Right</HorizontalAlign>
<ChildItems>
<Button name="УстановитьИПродолжить" id="8">
<Type>CommandBarButton</Type>
<DefaultButton>true</DefaultButton>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.УстановитьИПродолжить</CommandName>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Установить и продолжить</v8:content>
</v8:item>
</Title>
<ButtonImportance>Main</ButtonImportance>
<ExtendedTooltip name="УстановитьИПродолжитьРасширеннаяПодсказка" id="11"/>
</Button>
<Button name="ПродолжитьБезУстановки" id="9">
<Type>CommandBarButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ПродолжитьБезУстановки</CommandName>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Создать рабочее место без установки компоненты</v8:content>
</v8:item>
</Title>
<ExtendedTooltip name="ПродолжитьБезУстановкиРасширеннаяПодсказка" id="12"/>
</Button>
</ChildItems>
</AutoCommandBar>
<Events>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
</Events>
<ChildItems>
<LabelDecoration name="ДекорацияПояснение" id="6">
<AutoMaxWidth>false</AutoMaxWidth>
<SkipOnInput>false</SkipOnInput>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Для точного определения рабочего места и работы с подключаемым оборудованием в web-клиенте,
рекомендуется установить расширение для работы с 1С:Предприятием.
Установить?</v8:content>
</v8:item>
</Title>
<VerticalAlign>Top</VerticalAlign>
<ContextMenu name="ДекорацияПояснениеКонтекстноеМеню" id="7"/>
<ExtendedTooltip name=екорацияПояснениеExtendedTooltip" id="14"/>
</LabelDecoration>
</ChildItems>
<Attributes>
<Attribute name="Пояснение" id="1">
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
</Attributes>
<Commands>
<Command name="УстановитьИПродолжить" id="1">
<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>Установить расширение для работы с 1С:Предприятием и продолжить</v8:content>
</v8:item>
</ToolTip>
<Action>УстановитьИПродолжить</Action>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="ПродолжитьБезУстановки" id="2">
<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>Продолжить без установки расширения для веб-клиента 1С:Предприятие</v8:content>
</v8:item>
</ToolTip>
<Action>ПродолжитьБезУстановки</Action>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
</Commands>
<Parameters>
<Parameter name="ТекстПредложения">
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
<KeyParameter>true</KeyParameter>
</Parameter>
</Parameters>
</Form>

View File

@ -0,0 +1,47 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2024, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Не ПустаяСтрока(Параметры.ТекстПредложения) Тогда
Элементы.ДекорацияПояснение.Заголовок = Параметры.ТекстПредложения
+ Символы.ПС
+ НСтр("ru = 'Установить?'");
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура УстановитьИПродолжить(Команда)
Закрыть(КодВозвратаДиалога.Да);
КонецПроцедуры
&НаКлиенте
Процедура ПродолжитьБезУстановки(Команда)
Закрыть(КодВозвратаДиалога.Отмена);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
#КонецОбласти

View File

@ -0,0 +1,25 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonForm uuid="3a86fec4-2a21-46fc-ba2c-7425afc979ed">
<Properties>
<Name>КодВидаНоменклатурнойКлассификации</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Код вида номенклатурной классификации</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
<UseStandardCommands>false</UseStandardCommands>
<ExtendedPresentation/>
<Explanation/>
</Properties>
</CommonForm>
</MetaDataObject>

View File

@ -0,0 +1,154 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<WindowOpeningMode>DontBlock</WindowOpeningMode>
<Group>Vertical</Group>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<Autofill>false</Autofill>
<ChildItems>
<Button name="ФормаВыбрать" id="33">
<Type>CommandBarButton</Type>
<DefaultButton>true</DefaultButton>
<CommandName>Form.Command.Выбрать</CommandName>
<ButtonImportance>Main</ButtonImportance>
<ExtendedTooltip name="ФормаВыбратьРасширеннаяПодсказка" id="34"/>
</Button>
<Button name="ФормаОтмена" id="31">
<Type>CommandBarButton</Type>
<CommandName>Form.StandardCommand.Cancel</CommandName>
<ExtendedTooltip name="ФормаОтменаРасширеннаяПодсказка" id="32"/>
</Button>
</ChildItems>
</AutoCommandBar>
<Events>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
</Events>
<ChildItems>
<Table name="Список" id="1">
<ReadOnly>true</ReadOnly>
<ChangeRowSet>false</ChangeRowSet>
<ChangeRowOrder>false</ChangeRowOrder>
<ChoiceMode>true</ChoiceMode>
<SelectionMode>SingleRow</SelectionMode>
<RowSelectionMode>Cell</RowSelectionMode>
<UseAlternationRowColorBWA>false</UseAlternationRowColorBWA>
<AutoInsertNewRow>true</AutoInsertNewRow>
<EnableStartDrag>true</EnableStartDrag>
<EnableDrag>true</EnableDrag>
<DataPath>Дерево</DataPath>
<ContextMenu name="СписокКонтекстноеМеню" id="2"/>
<AutoCommandBar name="СписокКоманднаяПанель" id="3">
<Autofill>false</Autofill>
</AutoCommandBar>
<ExtendedTooltip name="СписокРасширеннаяПодсказка" id="4"/>
<SearchStringAddition name="СписокСтрокаПоиска" id="5">
<AdditionSource>
<Item>Список</Item>
<Type>SearchStringRepresentation</Type>
</AdditionSource>
<ContextMenu name="СписокСтрокаПоискаКонтекстноеМеню" id="6"/>
<ExtendedTooltip name="СписокСтрокаПоискаРасширеннаяПодсказка" id="7"/>
</SearchStringAddition>
<ViewStatusAddition name="СписокСостояниеПросмотра" id="8">
<AdditionSource>
<Item>Список</Item>
<Type>ViewStatusRepresentation</Type>
</AdditionSource>
<ContextMenu name="СписокСостояниеПросмотраКонтекстноеМеню" id="9"/>
<ExtendedTooltip name="СписокСостояниеПросмотраРасширеннаяПодсказка" id="10"/>
</ViewStatusAddition>
<SearchControlAddition name="СписокУправлениеПоиском" id="11">
<AdditionSource>
<Item>Список</Item>
<Type>SearchControl</Type>
</AdditionSource>
<ContextMenu name="СписокУправлениеПоискомКонтекстноеМеню" id="12"/>
<ExtendedTooltip name="СписокУправлениеПоискомРасширеннаяПодсказка" id="13"/>
</SearchControlAddition>
<Events>
<Event name="Selection">СписокВыбор</Event>
</Events>
<ChildItems>
<InputField name="НаименованиеВидаНоменклатурнойКлассификации" id="25">
<DataPath>Дерево.НаименованиеВидаНоменклатурнойКлассификации</DataPath>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<Width>60</Width>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="НаименованиеВидаНоменклатурнойКлассификацииКонтекстноеМеню" id="26"/>
<ExtendedTooltip name="НаименованиеВидаНоменклатурнойКлассификацииРасширеннаяПодсказка" id="27"/>
</InputField>
<InputField name="КодВидаНоменклатурнойКлассификации" id="28">
<DataPath>Дерево.КодВидаНоменклатурнойКлассификации</DataPath>
<EditMode>EnterOnInput</EditMode>
<AutoEditMode>true</AutoEditMode>
<Width>35</Width>
<AutoMaxWidth>false</AutoMaxWidth>
<ContextMenu name="КодВидаНоменклатурнойКлассификацииКонтекстноеМеню" id="29"/>
<ExtendedTooltip name="КодВидаНоменклатурнойКлассификацииРасширеннаяПодсказка" id="30"/>
</InputField>
</ChildItems>
</Table>
</ChildItems>
<Attributes>
<Attribute name="Дерево" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дерево</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>v8:ValueTree</v8:Type>
</Type>
<Columns>
<Column name="НаименованиеВидаНоменклатурнойКлассификации" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Наименование вида номенклатурной классификации</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Column>
<Column name="КодВидаНоменклатурнойКлассификации" id="3">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Код вида номенклатурной классификации</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>100</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Column>
</Columns>
</Attribute>
</Attributes>
<Commands>
<Command name="Выбрать" id="1">
<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>

View File

@ -0,0 +1,83 @@
#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
ЗаполнитьДанные();
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
ВыбратьДанные();
КонецПроцедуры
&НаКлиенте
Процедура Выбрать(Команда)
ВыбратьДанные();
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаКлиенте
Процедура ВыбратьДанные()
ТекущиеДанные = Элементы.Список.ТекущиеДанные;
Если ТекущиеДанные <> Неопределено И НЕ ПустаяСтрока(ТекущиеДанные.КодВидаНоменклатурнойКлассификации) Тогда
СтруктураВозврата = Новый Структура();
СтруктураВозврата.Вставить("КодВидаНоменклатурнойКлассификации", ТекущиеДанные.КодВидаНоменклатурнойКлассификации);
СтруктураВозврата.Вставить("НаименованиеВидаНоменклатурнойКлассификации", ТекущиеДанные.НаименованиеВидаНоменклатурнойКлассификации);
Закрыть(СтруктураВозврата);
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ЗаполнитьДанные()
УстановитьПривилегированныйРежим(Истина);
Данные = ПолучитьОбщийМакет("КодВидаНоменклатурнойКлассификации").ПолучитьТекст() ;
НоменклатурнаяКлассификация = Неопределено;
Если Не ПустаяСтрока(Данные) Тогда
ДеревоРек = РеквизитФормыВЗначение("Дерево");
ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.УстановитьСтроку(Данные);
ЧтениеXML.ПерейтиКСодержимому();
Если ЧтениеXML.Имя = "КодВидаНоменклатурнойКлассификации" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
Пока ЧтениеXML.Прочитать() Цикл
Если ЧтениеXML.Имя = "НоменклатурнаяКлассификация" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
НоменклатурнаяКлассификация = ДеревоРек.Строки.Добавить();
НоменклатурнаяКлассификация.НаименованиеВидаНоменклатурнойКлассификации = ЧтениеXML.ЗначениеАтрибута("Имя");
НоменклатурнаяКлассификация.КодВидаНоменклатурнойКлассификации = "";
ИначеЕсли ЧтениеXML.Имя = "ВидНоменклатурнойКлассификации" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
Если НоменклатурнаяКлассификация <> Неопределено Тогда
ВидНоменклатурнойКлассификации = НоменклатурнаяКлассификация.Строки.Добавить();
ВидНоменклатурнойКлассификации.НаименованиеВидаНоменклатурнойКлассификации = ЧтениеXML.ЗначениеАтрибута("Имя");
ВидНоменклатурнойКлассификации.КодВидаНоменклатурнойКлассификации = ЧтениеXML.ЗначениеАтрибута("КодВида");
КонецЕсли
КонецЕсли;
КонецЦикла;
КонецЕсли;
ЗначениеВРеквизитФормы(ДеревоРек, "Дерево");
КонецЕсли;
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,25 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonForm uuid="60df9bf6-5bb6-41f7-8515-35fade226ddf">
<Properties>
<Name>НастройкаРегистрацииККТ</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Настройка регистрации ККТ</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
<UseStandardCommands>true</UseStandardCommands>
<ExtendedPresentation/>
<Explanation/>
</Properties>
</CommonForm>
</MetaDataObject>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,287 @@
#Область ОписаниеПеременных
&НаКлиенте
Перем ВыполняетсяОперация;
#КонецОбласти
#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// Пропускаем инициализацию, чтобы гарантировать получение формы при передаче параметра "АвтоТест".
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
ФискальноеУстройство = Параметры.ФискальноеУстройство;
Если Параметры.Свойство("Организация") Тогда
Организация = Параметры.Организация;
КонецЕсли;
Если Параметры.ТипОперации <> 0 Тогда
ТипОперации = Параметры.ТипОперации;
Если ТипОперации = 1 Тогда
Заголовок = НСтр("ru='Регистрация фискального накопителя'")
ИначеЕсли ТипОперации = 3 Тогда
Заголовок = НСтр("ru='Закрытие фискального накопителя'");
Иначе
Заголовок = НСтр("ru='Изменение параметров регистрации фискального накопителя'");
КонецЕсли;
Элементы.ТипОперации.Видимость = Ложь;
Иначе
ТипОперации = 2;
Элементы.ТипОперации.Видимость = Истина;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
ВыполняетсяОперация = Ложь;
КодПричиныПеререгистрации = 3;
Доступность = Ложь;
ОповещениеПриЗавершении = Новый ОписаниеОповещения("ПолучениеПараметровФискальногоУстройства_Завершение", ЭтотОбъект);
ОборудованиеЧекопечатающиеУстройстваКлиент.НачатьПолучениеПараметровФискальногоУстройства(ОповещениеПриЗавершении, УникальныйИдентификатор, ФискальноеУстройство);
КонецПроцедуры
&НаКлиенте
Процедура ПолучениеПараметровФискальногоУстройства_Завершение(РезультатВыполнения, Параметры) Экспорт
ОчиститьСообщения();
Если РезультатВыполнения.Результат Тогда
ПараметрыККТ = РезультатВыполнения.ПараметрыККТ;
ЗаполнитьЗначенияСвойств(ЭтотОбъект, ПараметрыККТ);
СистемыНалогообложения = СтрРазделить(ПараметрыККТ.КодыСистемыНалогообложения, ",", Ложь);
КодыСистемыНалогообложения0 = СистемыНалогообложения.Найти("0") <> Неопределено;
КодыСистемыНалогообложения1 = СистемыНалогообложения.Найти("1") <> Неопределено;
КодыСистемыНалогообложения2 = СистемыНалогообложения.Найти("2") <> Неопределено;
КодыСистемыНалогообложения3 = СистемыНалогообложения.Найти("3") <> Неопределено;
КодыСистемыНалогообложения4 = СистемыНалогообложения.Найти("4") <> Неопределено;
КодыСистемыНалогообложения5 = СистемыНалогообложения.Найти("5") <> Неопределено;
ПризнакиАгента = СтрРазделить(ПараметрыККТ.ПризнакиАгента, ",", Ложь);
ПАанковскийПлатежныйАгент = ПризнакиАгента.Найти("0") <> Неопределено;
ПАанковскийПлатежныйСубагент = ПризнакиАгента.Найти("1") <> Неопределено;
ПА_ПлатежныйАгент = ПризнакиАгента.Найти("2") <> Неопределено;
ПА_ПлатежныйСубагент = ПризнакиАгента.Найти("3") <> Неопределено;
ПАоверенный = ПризнакиАгента.Найти("4") <> Неопределено;
ПА_Комиссионер = ПризнакиАгента.Найти("5") <> Неопределено;
ПА_Агент = ПризнакиАгента.Найти("6") <> Неопределено;
ВерсияФФДККТ = ПараметрыККТ.ВерсияФФДККТ;
Элементы.ВерсияФФД.Заголовок = НСтр("ru = 'ФФД'") + Символы.НПП + ПараметрыККТ.ВерсияФФДККТ;
Иначе
ТекстСообщения = РезультатВыполнения.ОписаниеОшибки;
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ТекстСообщения);
КонецЕсли;
ОбновитьСостояниеФормы();
Если ТипОперации = 1 Тогда // Регистрация ФН
Если РезультатВыполнения.Результат И ПараметрыККТ.ПризнакФискализации Тогда
Элементы.ОперацияПродолжить.Видимость = Ложь;
ТекстСообщения = НСтр("ru='Фискальный накопитель уже зарегистрирован. Воспользуйтесь функцией изменение параметров регистрации фискального накопителя.'");
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ТекстСообщения);
Возврат;
КонецЕсли;
ПараметрыРегистрации = Новый Структура("ОрганизацияНазвание, ОрганизацияИНН, АдресПроведенияРасчетов");
МенеджерОборудованияВызовСервераПереопределяемый.ЗаполнитьРеквизитыОрганизацииДляРегистрацииФН(Организация, ПараметрыРегистрации);
Если Не ПустаяСтрока(ПараметрыРегистрации.ОрганизацияНазвание) Тогда
ОрганизацияНазвание = ПараметрыРегистрации.ОрганизацияНазвание;
КонецЕсли;
Если Не ПустаяСтрока(ПараметрыРегистрации.ОрганизацияИНН) Тогда
ОрганизацияИНН = ПараметрыРегистрации.ОрганизацияИНН;
КонецЕсли;
Если Не ПустаяСтрока(ПараметрыРегистрации.АдресПроведенияРасчетов) Тогда
АдресПроведенияРасчетов = ПараметрыРегистрации.АдресПроведенияРасчетов;
КонецЕсли;
КонецЕсли;
ОповещениеПриЗавершении = Новый ОписаниеОповещения("ПолучениеТекущегоСостоянияФискальногоУстройства_Завершение", ЭтотОбъект);
ОборудованиеЧекопечатающиеУстройстваКлиент.НачатьПолучениеТекущегоСостоянияФискальногоУстройства(ОповещениеПриЗавершении, УникальныйИдентификатор, ФискальноеУстройство);
КонецПроцедуры
&НаКлиенте
Процедура ПолучениеТекущегоСостоянияФискальногоУстройства_Завершение(РезультатВыполнения, Параметры) Экспорт
Доступность = Истина;
Если РезультатВыполнения.Результат И РезультатВыполнения.СтатусСмены <> 1 Тогда
Элементы.ОперацияПродолжить.Видимость = Ложь;
ТекстСообщения = НСтр("ru='Операция доступна только при закрытой смене на фискальном устройстве. Закройте смену и повторите операцию.'");
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ТекстСообщения);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура ПродолжитьОперациюПередПродолжением(РезультатВопроса, ПараметрыЗаписи) Экспорт
Если РезультатВопроса = КодВозвратаДиалога.Да Тогда
ВыполняетсяОперация = Истина;
ВыполнитьОперацию();
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПродолжитьОперацию(Команда)
Если ТипОперации = 3 И Не ВыполняетсяОперация Тогда
Оповещение = Новый ОписаниеОповещения("ПродолжитьОперациюПередПродолжением", ЭтотОбъект);
Сообщение = НСтр("ru='Закрытие фискального накопителя - необратимая операция.
|В дальнейшем фискальный накопитель нельзя будет использовать.
|Вы уверенны что хотите продолжить операцию?'");
ПоказатьВопрос(Оповещение, Сообщение, РежимДиалогаВопрос.ДаНет);
Возврат;
КонецЕсли;
ВыполнитьОперацию();
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьОперацию()
Если Элементы.ГруппаРеквизитыОрганизации.Видимость Тогда
КодыСистемыУстановлен = КодыСистемыНалогообложения0 Или КодыСистемыНалогообложения1 Или КодыСистемыНалогообложения2
Или КодыСистемыНалогообложения3 Или КодыСистемыНалогообложения4 Или КодыСистемыНалогообложения5;
Если Не КодыСистемыУстановлен Тогда
ПоказатьПредупреждение(, НСтр("ru='Не указан не один код налогообложения.'"));
Возврат;
КонецЕсли;
КонецЕсли;
ПараметрыНастройки = ОборудованиеЧекопечатающиеУстройстваКлиентСервер.ПараметрыОперацииФискализацииНакопителя();
ЗаполнитьЗначенияСвойств(ПараметрыНастройки, ЭтотОбъект);
СистемыНалогообложения = Новый Массив();
Если КодыСистемыНалогообложения0 Тогда
СистемыНалогообложения.Добавить("0");
КонецЕсли;
Если КодыСистемыНалогообложения1 Тогда
СистемыНалогообложения.Добавить("1");
КонецЕсли;
Если КодыСистемыНалогообложения2 Тогда
СистемыНалогообложения.Добавить("2");
КонецЕсли;
Если КодыСистемыНалогообложения3 Тогда
СистемыНалогообложения.Добавить("3");
КонецЕсли;
Если КодыСистемыНалогообложения4 Тогда
СистемыНалогообложения.Добавить("4");
КонецЕсли;
Если КодыСистемыНалогообложения5 Тогда
СистемыНалогообложения.Добавить("5");
КонецЕсли;
ПараметрыНастройки.КодыСистемыНалогообложения = СтрСоединить(СистемыНалогообложения,",");
ПризнакиАгента = Новый Массив();
Если ПАанковскийПлатежныйАгент Тогда
ПризнакиАгента.Добавить("0");
КонецЕсли;
Если ПАанковскийПлатежныйСубагент Тогда
ПризнакиАгента.Добавить("1");
КонецЕсли;
Если ПА_ПлатежныйАгент Тогда
ПризнакиАгента.Добавить("2");
КонецЕсли;
Если ПА_ПлатежныйСубагент Тогда
ПризнакиАгента.Добавить("3");
КонецЕсли;
Если ПАоверенный Тогда
ПризнакиАгента.Добавить("4");
КонецЕсли;
Если ПА_Комиссионер Тогда
ПризнакиАгента.Добавить("5");
КонецЕсли;
Если ПА_Агент Тогда
ПризнакиАгента.Добавить("6");
КонецЕсли;
ПараметрыНастройки.ПризнакиАгента = СтрСоединить(ПризнакиАгента,",");
Если Элементы.ГруппаПричиныИзмененияСведенийОККТ.Видимость И ПричиныИзмененияСведенийОККТ.Количество() > 0 Тогда
ПричиныИзмененияСведений = Новый Массив();
Для Каждого ЭлементПричинаИзмененияСведений Из ПричиныИзмененияСведенийОККТ Цикл
КодПричиныИзмененияСведений = ОборудованиеЧекопечатающиеУстройстваРФКлиентСервер.КодПричиныИзмененияСведенийККТ(ЭлементПричинаИзмененияСведений.ПричинаИзмененияСведений);
ПричиныИзмененияСведений.Добавить(КодПричиныИзмененияСведений);
КонецЦикла;
ПараметрыНастройки.КодыПричинИзмененияСведений = СтрСоединить(ПричиныИзмененияСведений,",");
КонецЕсли;
ТекущийКассир = МенеджерОборудованияКлиентСервер.ТекущийКассирДляФискальныхОпераций();
ПараметрыНастройки.Кассир = ТекущийКассир.Кассир;
ПараметрыНастройки.КассирИНН = ТекущийКассир.КассирИНН;
Закрыть(ПараметрыНастройки);
КонецПроцедуры
&НаКлиенте
Процедура ОперацияОтмена(Команда)
Закрыть(Неопределено);
КонецПроцедуры
&НаКлиенте
Процедура ОбновитьСостояниеФормы()
Элементы.КодПричиныПеререгистрации.Видимость = ТипОперации = 2;
Элементы.НомерАвтоматаДляАвтоматическогоРежима.Доступность = ПризнакАвтоматическогоРежима;
Элементы.ГруппаОператорФискальныхДанных.Видимость = ТипОперации <> 2 Или КодПричиныПеререгистрации = 2 Или КодПричиныПеререгистрации = 1;
Элементы.ГруппаРеквизитыОрганизации.Видимость = ТипОперации <> 2 Или КодПричиныПеререгистрации = 3 Или КодПричиныПеререгистрации = 1;
Элементы.ГруппаНастройкиККТ.Видимость = ТипОперации <> 2 Или КодПричиныПеререгистрации = 4 Или КодПричиныПеререгистрации = 1;
Элементы.ГруппаПричиныИзмененияСведенийОККТ.Видимость = ТипОперации = 2;
Элементы.ОрганизацияИНН.ТолькоПросмотр = НЕ (ТипОперации = 1);
Элементы.РегистрационныйНомерККТ.ТолькоПросмотр = НЕ (ТипОперации = 1);
Если ТипОперации = 1 Тогда
Элементы.ПризнакиАгента.Доступность = Ложь;
Элементы.КодыСистемыНалогообложения3.Доступность = Ложь;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПризнакАвтоматическогоРежимаПриИзменении(Элемент)
ОбновитьСостояниеФормы();
КонецПроцедуры
&НаКлиенте
Процедура КодПричиныПеререгистрацииПриИзменении(Элемент)
ОбновитьСостояниеФормы();
КонецПроцедуры
&НаКлиенте
Процедура ТипОперацииПриИзменении(Элемент)
ОбновитьСостояниеФормы();
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,25 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonForm uuid="e7e86c26-282d-438d-81c9-5e327e9d0609">
<Properties>
<Name>ПроверкаКонтрольнойМаркиБПО</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Проверка контрольной марки БПО</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
<UseStandardCommands>false</UseStandardCommands>
<ExtendedPresentation/>
<Explanation/>
</Properties>
</CommonForm>
</MetaDataObject>

View File

@ -0,0 +1,90 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<WindowOpeningMode>LockOwner</WindowOpeningMode>
<AutoTitle>false</AutoTitle>
<AutoURL>false</AutoURL>
<Group>HorizontalIfPossible</Group>
<AutoFillCheck>false</AutoFillCheck>
<Customizable>false</Customizable>
<CommandBarLocation>None</CommandBarLocation>
<ShowCloseButton>false</ShowCloseButton>
<ShowCommandBar>false</ShowCommandBar>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<HorizontalAlign>Right</HorizontalAlign>
</AutoCommandBar>
<Events>
<Event name="OnOpen">ПриОткрытии</Event>
<Event name="BeforeClose">ПередЗакрытием</Event>
</Events>
<ChildItems>
<UsualGroup name="ГруппаТекст" id="10">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Группа текст</v8:content>
</v8:item>
</Title>
<Group>HorizontalIfPossible</Group>
<VerticalAlign>Center</VerticalAlign>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаТекстРасширеннаяПодсказка" id="11"/>
<ChildItems>
<PictureDecoration name=екорация1" id="4">
<ContextMenu name=екорация1КонтекстноеМеню" id="5"/>
<ExtendedTooltip name=екорация1РасширеннаяПодсказка" id="6"/>
</PictureDecoration>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаСостояние" id="12">
<GroupVerticalAlign>Center</GroupVerticalAlign>
<Group>Vertical</Group>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаСостояниеРасширеннаяПодсказка" id="13"/>
<ChildItems>
<LabelDecoration name=екорация3" id="14">
<Width>20</Width>
<Title formatted="false">
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Проверка кодов маркировки...</v8:content>
</v8:item>
</Title>
<VerticalAlign>Center</VerticalAlign>
<ContextMenu name=екорация3КонтекстноеМеню" id="15"/>
<ExtendedTooltip name=екорация3РасширеннаяПодсказка" id="16"/>
</LabelDecoration>
<ProgressBarField name="Состояние" id="1">
<DataPath>Состояние</DataPath>
<TitleLocation>None</TitleLocation>
<ContextMenu name="СостояниеКонтекстноеМеню" id="2"/>
<ExtendedTooltip name="СостояниеРасширеннаяПодсказка" id="3"/>
</ProgressBarField>
</ChildItems>
</UsualGroup>
</ChildItems>
<Attributes>
<Attribute name="Состояние" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Состояние</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:decimal</v8:Type>
<v8:NumberQualifiers>
<v8:Digits>10</v8:Digits>
<v8:FractionDigits>0</v8:FractionDigits>
<v8:AllowedSign>Any</v8:AllowedSign>
</v8:NumberQualifiers>
</Type>
</Attribute>
</Attributes>
<Parameters>
<Parameter name="ДанныеОперации">
<Type/>
</Parameter>
</Parameters>
</Form>

View File

@ -0,0 +1,68 @@
#Область ОбработчикиСобытийФормы
&НаКлиенте
Процедура ПриОткрытии(Отказ)
ПараметрыПроверки = ОбщегоНазначенияБПОКлиент.ПараметрПриложения("БПО.ПроверкаКМ");
ОбщегоНазначенияБПОКлиент.УдалитьПараметрПриложения("БПО.ПроверкаКМ");
ПараметрыПодключения = ПараметрыПроверки.ПараметрыПодключения;
ДанныеОперации = ПараметрыПроверки.ДанныеОперации;
Если ТипЗнч(ДанныеОперации.ЗапросыКМ) = Тип("Массив") Тогда
МассивОпераций = ДанныеОперации.ЗапросыКМ;
Иначе
МассивОпераций = Новый Массив();
МассивОпераций.Добавить(ДанныеОперации.ЗапросыКМ);
КонецЕсли;
Если МассивОпераций.Количество()=1 Тогда
Отказ = Истина;
Оповещение = ПараметрыПроверки.ОповещениеПриЗавершении;
Иначе
Оповещение = Новый ОписаниеОповещения("НачатьПроверкуКМЗавершение", ЭтотОбъект);
ПодключитьОбработчикОжидания("Подключаемый_СтатусПроверкаКМ", 0.2, Истина);
КонецЕсли;
Элементы.ГруппаТекст.Видимость = Ложь;
Элементы.ГруппаСостояние.Видимость = Истина;
Состояние = 0;
МенеджерОборудованияМаркировкаКлиент.НачатьПроверкуКМ(Оповещение, ПараметрыПодключения, ДанныеОперации);
КонецПроцедуры
&НаКлиенте
Процедура НачатьПроверкуКМЗавершение(Результат, Контекст) Экспорт
Закрыть(Результат);
КонецПроцедуры
&НаКлиенте
Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка)
Результат = МенеджерОборудованияМаркировкаКлиент.СостояниеПроверкиКМ();
Если Результат.ОбработкаЗавершена Тогда
Возврат;
КонецЕсли;
Отказ = Истина;
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаКлиенте
Процедура Подключаемый_СтатусПроверкаКМ()
Результат = МенеджерОборудованияМаркировкаКлиент.СостояниеПроверкиКМ();
Если Результат.ОбработкаЗавершена Тогда
Состояние = 100;
Возврат;
КонецЕсли;
Состояние = (Результат.ВыполненоОпераций+1) / Результат.ВсегоОпераций * 100;
ПодключитьОбработчикОжидания("Подключаемый_СтатусПроверкаКМ", 0.2, Истина);
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,25 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonForm uuid="91147d24-94d1-44d6-8a4b-d00f9377b3bc">
<Properties>
<Name>УправлениеФискальнымУстройством</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Управление фискальным устройством</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
<UseStandardCommands>true</UseStandardCommands>
<ExtendedPresentation/>
<Explanation/>
</Properties>
</CommonForm>
</MetaDataObject>

View File

@ -0,0 +1,191 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<WindowOpeningMode>DontBlock</WindowOpeningMode>
<Group>Vertical</Group>
<VerticalScroll>useIfNecessary</VerticalScroll>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<HorizontalAlign>Right</HorizontalAlign>
<Autofill>false</Autofill>
</AutoCommandBar>
<Events>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
</Events>
<ChildItems>
<UsualGroup name="ГруппаОсновныеОперации" id="18">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Основные операции</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Behavior>Usual</Behavior>
<Representation>None</Representation>
<ShowTitle>false</ShowTitle>
<ExtendedTooltip name="ГруппаОсновныеОперацииРасширеннаяПодсказка" id="19"/>
<ChildItems>
<Button name="ОткрытьСмену" id="8">
<Type>UsualButton</Type>
<Representation>PictureAndText</Representation>
<CommandName>Form.Command.ОткрытьСмену</CommandName>
<ExtendedTooltip name="ОткрытьСменуРасширеннаяПодсказка" id="9"/>
</Button>
<Button name="ВнесениеДенег" id="20">
<Type>UsualButton</Type>
<CommandName>Form.Command.ВнесениеДенег</CommandName>
<ExtendedTooltip name="ВнесениеДенегРасширеннаяПодсказка" id="21"/>
</Button>
<Button name="ВыемкаДенег" id="22">
<Type>UsualButton</Type>
<CommandName>Form.Command.ВыемкаДенег</CommandName>
<ExtendedTooltip name="ВыемкаДенегРасширеннаяПодсказка" id="23"/>
</Button>
<Button name="ОтчетОТекущемСостоянииРасчетов" id="14">
<Type>UsualButton</Type>
<CommandName>Form.Command.ОтчетОТекущемСостоянииРасчетов</CommandName>
<ExtendedTooltip name="ОтчетОТекущемСостоянииРасчетовРасширеннаяПодсказка" id="15"/>
</Button>
<Button name="ОтчетБезГашения" id="16">
<Type>UsualButton</Type>
<Representation>PictureAndText</Representation>
<CommandName>Form.Command.ОтчетБезГашения</CommandName>
<ExtendedTooltip name="ОтчетБезГашенияРасширеннаяПодсказка" id="17"/>
</Button>
<Button name="ЗакрытьСмену" id="6">
<Type>UsualButton</Type>
<Representation>PictureAndText</Representation>
<CommandName>Form.Command.ЗакрытьСмену</CommandName>
<ExtendedTooltip name="ЗакрытьСменуРасширеннаяПодсказка" id="7"/>
</Button>
</ChildItems>
</UsualGroup>
</ChildItems>
<Attributes>
<Attribute name="Кассир" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Кассир</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
<Attribute name="КассирИНН" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Кассир ИНН</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
</Attributes>
<Commands>
<Command name="ОтчетОТекущемСостоянииРасчетов" id="1">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="ЗакрытьСмену" id="2">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="ОткрытьСмену" id="3">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="ВыемкаДенег" id="5">
<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>
<Command name="ВнесениеДенег" id="6">
<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>

View File

@ -0,0 +1,192 @@

#Область ОбработчикиСобытий
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// Пропускаем инициализацию, чтобы гарантировать получение формы при передаче параметра "АвтоТест".
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
ТекущийКассир = МенеджерОборудованияКлиентСервер.ТекущийКассирДляФискальныхОпераций();
Кассир = ТекущийКассир.Кассир;
КассирИНН = ТекущийКассир.КассирИНН;
ИнкассацияДоступна = МенеджерОборудования.ДоступноИнкассацияВУправлениеФискальнымУстройством();
Элементы.ВнесениеДенег.Видимость = ИнкассацияДоступна;
Элементы.ВыемкаДенег.Видимость = ИнкассацияДоступна;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура ОперацияЗавершение(РезультатВыполнения, Параметры) Экспорт
Доступность = Истина;
ТекстСообщения = ?(РезультатВыполнения.Результат, НСтр("ru='Операция успешно завершена.'"), РезультатВыполнения.ОписаниеОшибки);
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ТекстСообщения);
КонецПроцедуры
&НаКлиенте
Процедура ОткрытьСмену(Команда)
ВыполнитьОперацию("ОткрытьСмену");
КонецПроцедуры
&НаКлиенте
Процедура ЗакрытьСмену(Команда)
ВыполнитьОперацию("ЗакрытьСмену");
КонецПроцедуры
&НаКлиенте
Процедура ВнесениеДенег(Команда)
ВыполнитьОперацию("Внесение");
КонецПроцедуры
&НаКлиенте
Процедура ВыемкаДенег(Команда)
ВыполнитьОперацию("Выемка");
КонецПроцедуры
&НаКлиенте
Процедура ОтчетОТекущемСостоянииРасчетов(Команда)
ВыполнитьОперацию("ОтчетОТекущемСостоянииРасчетов");
КонецПроцедуры
&НаКлиенте
Процедура ОтчетБезГашения(Команда)
ВыполнитьОперацию("ОтчетБезГашения");
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьОперацию(Команда)
ОчиститьСообщения();
ПоддерживаемыеТипы = МенеджерОборудованияКлиентСервер.ПараметрыТипыОборудования();
ПоддерживаемыеТипы.ПринтерЧеков = Истина;
ПоддерживаемыеТипы.ККТ = Истина;
ДополнительныеПараметры = Новый Структура("Команда", Команда);
Если Команда = "Внесение" Или Команда = "Выемка" Тогда
ОписаниеОповещения = Новый ОписаниеОповещения("ВыполнитьОперациюВыбораУстройстваИнкассация", ЭтотОбъект, ДополнительныеПараметры);
Иначе
ОписаниеОповещения = Новый ОписаниеОповещения("ВыполнитьОперациюВыбораУстройства", ЭтотОбъект, ДополнительныеПараметры);
КонецЕсли;
МенеджерОборудованияКлиент.ВыбратьУстройство(ОписаниеОповещения, ПоддерживаемыеТипы,
НСтр("ru='Выберите фискальное устройство'"),
НСтр("ru='Фискальное устройство не подключено.'"),
НСтр("ru='Фискальное устройство не выбрано.'"));
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьОперациюВыбораУстройстваИнкассация(РезультатВыбора, ДополнительныеПараметры) Экспорт
Если НЕ РезультатВыбора.Результат Тогда
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(РезультатВыбора.ОписаниеОшибки);
Возврат;
КонецЕсли;
СуммаОперации = 0;
Если ДополнительныеПараметры.Команда = "Внесение" Тогда
ЗаголовокОкна = НСтр("ru='Сумма внесения'");
Иначе
ЗаголовокОкна = НСтр("ru='Сумма выемки'");
КонецЕсли;
ПараметрыПослеВводаЧисла = Новый Структура;
ПараметрыПослеВводаЧисла.Вставить("СуммаОперации", СуммаОперации);
ПараметрыПослеВводаЧисла.Вставить("ИдентификаторУстройства", РезультатВыбора.ИдентификаторУстройства);
ПараметрыПослеВводаЧисла.Вставить("Команда", ДополнительныеПараметры.Команда);
ОповещениеПослеВводеЧисла = Новый ОписаниеОповещения("ИнкассацияЗавершение", ЭтотОбъект, ПараметрыПослеВводаЧисла);
ПоказатьВводЧисла(ОповещениеПослеВводеЧисла, СуммаОперации, ЗаголовокОкна, 15, 2);
КонецПроцедуры
&НаКлиенте
Процедура ИнкассацияЗавершение(Результат, ДополнительныеПараметры) Экспорт
СуммаОперации = ?(Результат = Неопределено, ДополнительныеПараметры.СуммаОперации, Результат);
Если Результат = Неопределено Тогда
Возврат;
КонецЕсли;
Доступность = Ложь;
ПараметрыОперации = ОборудованиеЧекопечатающиеУстройстваКлиентСервер.ПараметрыИнкассации();
ПараметрыОперации.ТипИнкассации = ?(ДополнительныеПараметры.Команда = "Внесение" , 1, 0);
ПараметрыОперации.Сумма = СуммаОперации;
ПараметрыОперации.Кассир = Кассир;
ПараметрыОперации.КассирИНН = КассирИНН;
ОповещениеПриЗавершении = Новый ОписаниеОповещения("ОперацияЗавершение", ЭтотОбъект);
ОборудованиеЧекопечатающиеУстройстваКлиент.НачатьИнкассациюНаФискальномУстройстве(ОповещениеПриЗавершении, УникальныйИдентификатор,
ДополнительныеПараметры.ИдентификаторУстройства, ПараметрыОперации);
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьОперациюВыбораУстройства(РезультатВыбора, ДополнительныеПараметры) Экспорт
Если НЕ РезультатВыбора.Результат Тогда
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(РезультатВыбора.ОписаниеОшибки);
Возврат;
КонецЕсли;
ОчиститьСообщения();
Доступность = Ложь;
ПараметрыОперации = ОборудованиеЧекопечатающиеУстройстваКлиентСервер.ПараметрыОткрытияЗакрытияСмены();
ПараметрыОперации.Кассир = Кассир;
ПараметрыОперации.КассирИНН = КассирИНН;
ОповещениеПриЗавершении = Новый ОписаниеОповещения("ОперацияЗавершение", ЭтотОбъект);
Если ДополнительныеПараметры.Команда = "ОткрытьСмену" Тогда
Если ОбщегоНазначенияБПОКлиент.ИспользуетсяКассоваяСмена() Тогда
ДополнительныеПараметры = Новый Структура();
МодульКассовыеСменыКлиентПереопределяемый = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("КассовыеСменыКлиентПереопределяемый");
МодульКассовыеСменыКлиентПереопределяемый.УправлениеФУЗаполнитьДополнительныеПараметрыПередОткрытиемСмены(РезультатВыбора.ИдентификаторУстройства, ДополнительныеПараметры);
Иначе
ДополнительныеПараметры = Неопределено;
КонецЕсли;
ОборудованиеЧекопечатающиеУстройстваКлиент.НачатьОткрытиеСменыНаФискальномУстройстве(ОповещениеПриЗавершении,
УникальныйИдентификатор, РезультатВыбора.ИдентификаторУстройства, ПараметрыОперации, ДополнительныеПараметры);
ИначеЕсли ДополнительныеПараметры.Команда = "ЗакрытьСмену" Тогда
ОборудованиеЧекопечатающиеУстройстваКлиент.НачатьЗакрытиеСменыНаФискальномУстройстве(ОповещениеПриЗавершении,
УникальныйИдентификатор, РезультатВыбора.ИдентификаторУстройства, ПараметрыОперации);
ИначеЕсли ДополнительныеПараметры.Команда = "ОтчетОТекущемСостоянииРасчетов" Тогда
ОборудованиеЧекопечатающиеУстройстваКлиент.НачатьФормированиеОтчетаОТекущемСостоянииРасчетов(ОповещениеПриЗавершении,
УникальныйИдентификатор, РезультатВыбора.ИдентификаторУстройства, ПараметрыОперации);
ИначеЕсли ДополнительныеПараметры.Команда = "ОтчетБезГашения" Тогда
ОборудованиеЧекопечатающиеУстройстваКлиент.НачатьФормированиеОтчетаБезГашения(ОповещениеПриЗавершении,
УникальныйИдентификатор, РезультатВыбора.ИдентификаторУстройства, ПараметрыОперации);
КонецЕсли;
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<Help xmlns="http://v8.1c.ru/8.3/xcf/extrnprops" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.21">
<Page>ru</Page>
</Help>

View File

@ -0,0 +1,3 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html;charset=utf-8" http-equiv="content-type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.18427"></meta></head><body>
<h1>Форма "Управление фискальным регистратором".</h1>
<p class="Usual">Форма предназначена для работы c фискальным регистратором.</p></body></html>

View File

@ -0,0 +1,25 @@
<?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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonForm uuid="e7c6ae50-116e-48c0-9fd0-034af6773d10">
<Properties>
<Name>УправлениеЭквайринговымТерминалом</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Управление эквайринговым терминалом</v8:content>
</v8:item>
</Synonym>
<Comment/>
<FormType>Managed</FormType>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UsePurposes>
<v8:Value xsi:type="app:ApplicationUsePurpose">PlatformApplication</v8:Value>
<v8:Value xsi:type="app:ApplicationUsePurpose">MobilePlatformApplication</v8:Value>
</UsePurposes>
<UseInInterfaceCompatibilityMode>Any</UseInInterfaceCompatibilityMode>
<UseStandardCommands>true</UseStandardCommands>
<ExtendedPresentation/>
<Explanation/>
</Properties>
</CommonForm>
</MetaDataObject>

View File

@ -0,0 +1,238 @@
<?xml version="1.0" encoding="UTF-8"?>
<Form xmlns="http://v8.1c.ru/8.3/xcf/logform" xmlns:app="http://v8.1c.ru/8.2/managed-application/core" xmlns:cfg="http://v8.1c.ru/8.1/data/enterprise/current-config" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:dcssch="http://v8.1c.ru/8.1/data-composition-system/schema" xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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: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.21">
<WindowOpeningMode>DontBlock</WindowOpeningMode>
<Group>Horizontal</Group>
<Customizable>false</Customizable>
<VerticalScroll>useIfNecessary</VerticalScroll>
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
<Autofill>false</Autofill>
</AutoCommandBar>
<Events>
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
</Events>
<ChildItems>
<UsualGroup name="ГруппаОсновныеОперации" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Основные операции</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Behavior>Usual</Behavior>
<Representation>None</Representation>
<ExtendedTooltip name=руппаОсновныеОперацииExtendedTooltip" id="11"/>
<ChildItems>
<Button name="ОплатитьКартой" id="2">
<Type>UsualButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ОплатитьКартой</CommandName>
<ExtendedTooltip name="ОплатитьКартойExtendedTooltip" id="12"/>
</Button>
<Button name="ОтменитьПлатежПоКарте" id="3">
<Type>UsualButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ОтменитьПлатежПоКарте</CommandName>
<ExtendedTooltip name="ОтменитьПлатежПоКартеExtendedTooltip" id="13"/>
</Button>
<Button name="ВернутьПлатежПоКарте" id="4">
<Type>UsualButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ВернутьПлатежПоКарте</CommandName>
<ExtendedTooltip name="ВернутьПлатежПоКартеExtendedTooltip" id="14"/>
</Button>
<Button name="ВыполнитьСверкуИтогов" id="6">
<Type>UsualButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ВыполнитьСверкуИтогов</CommandName>
<ExtendedTooltip name="ВыполнитьСверкуИтоговExtendedTooltip" id="15"/>
</Button>
</ChildItems>
</UsualGroup>
<UsualGroup name="ГруппаДополнительныеОперации" id="5">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Дополнительные операции</v8:content>
</v8:item>
</Title>
<Group>Vertical</Group>
<Behavior>Usual</Behavior>
<Representation>None</Representation>
<ExtendedTooltip name=руппаДополнительныеОперацииExtendedTooltip" id="16"/>
<ChildItems>
<Button name="ВыполнитьПреавторизацию" id="7">
<Type>UsualButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ВыполнитьПреавторизацию</CommandName>
<ExtendedTooltip name="ВыполнитьПреавторизациюExtendedTooltip" id="17"/>
</Button>
<Button name="ЗавершитьПреавторизацию" id="8">
<Type>UsualButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ЗавершитьПреавторизацию</CommandName>
<ExtendedTooltip name="ЗавершитьПреавторизациюExtendedTooltip" id="18"/>
</Button>
<Button name="ОтменитьПреавторизацию" id="9">
<Type>UsualButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.ОтменитьПреавторизацию</CommandName>
<ExtendedTooltip name="ОтменитьПреавторизациюExtendedTooltip" id="19"/>
</Button>
<Button name="НапечататьПоследнийСлипЧек" id="10">
<Type>UsualButton</Type>
<SkipOnInput>false</SkipOnInput>
<CommandName>Form.Command.НапечататьПоследнийСлипЧек</CommandName>
<ExtendedTooltip name="НапечататьПоследнийСлипЧекExtendedTooltip" id="20"/>
</Button>
</ChildItems>
</UsualGroup>
</ChildItems>
<Attributes>
<Attribute name="НомерСсылкиОперации" id="1">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Номер ссылки операции</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
</Attributes>
<Commands>
<Command name="ОплатитьКартой" id="1">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="ВернутьПлатежПоКарте" id="2">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="ОтменитьПлатежПоКарте" id="3">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="ВыполнитьПреавторизацию" id="5">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="ЗавершитьПреавторизацию" id="6">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="ОтменитьПреавторизацию" id="7">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
<Command name="НапечататьПоследнийСлипЧек" id="8">
<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>
<CurrentRowUse>DontUse</CurrentRowUse>
</Command>
</Commands>
</Form>

View File

@ -0,0 +1,143 @@
#Область ОбработчикиСобытий
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
// Пропускаем инициализацию, чтобы гарантировать получение формы при передаче параметра "АвтоТест".
Если Параметры.Свойство("АвтоТест") Тогда
Возврат;
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура ВыполнитьОперациюЗавершение(РезультатВыполнения, Параметры) Экспорт
Доступность = Истина;
Если РезультатВыполнения.Результат Тогда
ТекстСообщения = НСтр("ru = 'Операция выполнена успешно.'");
Иначе
ТекстСообщения = РезультатВыполнения.ОписаниеОшибки;
КонецЕсли;
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ТекстСообщения);
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьОперациюПоПлатежнойКарте(ТипТранзакции)
ОчиститьСообщения();
ПараметрыОперации = Новый Структура();
ПараметрыОперации.Вставить("ТипТранзакции" , ТипТранзакции);
ПараметрыОперации.Вставить("УказатьДополнительныеДанные" , Истина);
ПараметрыОперации.Вставить("ЗапретРедактированияСуммы" , Ложь);
ОписаниеОповещения = Новый ОписаниеОповещения("ВыполнитьОперациюПоПлатежнойКартеЗавершение", ЭтотОбъект, ПараметрыОперации);
ОткрытьФорму("Справочник.ПодключаемоеОборудование.Форма.ФормаАвторизацииЭТ", ПараметрыОперации,,, ,, ОписаниеОповещения, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьОперациюПоПлатежнойКартеЗавершение(Результат, Параметры) Экспорт
Если ТипЗнч(Результат) = Тип("Структура") Тогда
Если НЕ Параметры.Свойство("ТипТранзакции") Тогда
ТекстСообщения = НСтр("ru = 'Не указан тип транзакции.'");
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ТекстСообщения);
Возврат;
КонецЕсли;
Доступность = Ложь;
ПараметрыОперации = ОборудованиеПлатежныеСистемыКлиентСервер.ПараметрыВыполненияЭквайринговойОперации();
ПараметрыОперации.ТипТранзакции = Параметры.ТипТранзакции;
ПараметрыОперации.СуммаОперации = Результат.Сумма;
ПараметрыОперации.НомерЧека = ?(Результат.Свойство("НомерЧека") , Результат.НомерЧека, "");
ПараметрыОперации.НомерЧекаЭТ = ?(Результат.Свойство("НомерЧекаЭТ"), Результат.НомерЧекаЭТ, "");
ПараметрыОперации.СсылочныйНомер = Результат.СсылочныйНомер;
Оповещение = Новый ОписаниеОповещения("ВыполнитьОперациюЗавершение", ЭтотОбъект);
ОборудованиеПлатежныеСистемыКлиент.НачатьВыполнениеОперацииНаЭквайринговомТерминале(Оповещение, УникальныйИдентификатор, Неопределено, ПараметрыОперации);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ОплатитьПлатежнойКартой(Команда)
ВыполнитьОперациюПоПлатежнойКарте("AuthorizeSales");
КонецПроцедуры
&НаКлиенте
Процедура ВернутьПлатежПоКарте(Команда)
ВыполнитьОперациюПоПлатежнойКарте("AuthorizeRefund");
КонецПроцедуры
&НаКлиенте
Процедура ОтменитьПлатежПоКарте(Команда)
ВыполнитьОперациюПоПлатежнойКарте("AuthorizeVoid");
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьПреавторизацию(Команда)
ВыполнитьОперациюПоПлатежнойКарте("AuthorizePreSales");
КонецПроцедуры
&НаКлиенте
Процедура ЗавершитьПреавторизацию(Команда)
ВыполнитьОперациюПоПлатежнойКарте("AuthorizeCompletion");
КонецПроцедуры
&НаКлиенте
Процедура ОтменитьПреавторизацию(Команда)
ВыполнитьОперациюПоПлатежнойКарте("AuthorizeVoidPreSales");
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьСверкуИтогов(Команда)
ОчиститьСообщения();
Доступность = Ложь;
ОписаниеОповещения = Новый ОписаниеОповещения("ВыполнитьОперациюЗавершение", ЭтотОбъект);
ОборудованиеПлатежныеСистемыКлиент.НачатьВыполнениеСверкиИтоговНаЭквайринговомТерминале(ОписаниеОповещения, УникальныйИдентификатор)
КонецПроцедуры
&НаКлиенте
Процедура НапечататьПоследнийСлипЧек(Команда)
ОчиститьСообщения();
ПоследнийСлипЧек = ОборудованиеПлатежныеСистемыКлиент.ПоследнийСлипЧек();
Если Не ПустаяСтрока(ПоследнийСлипЧек) Тогда
Доступность = Ложь;
ПараметрыОперации = Новый Структура("СтрокиТекста", ПоследнийСлипЧек);
Оповещение = Новый ОписаниеОповещения("ВыполнитьОперациюЗавершение", ЭтотОбъект);
ОборудованиеЧекопечатающиеУстройстваКлиент.НачатьПечатьТекста(Оповещение, УникальныйИдентификатор, Неопределено, ПараметрыОперации);
Иначе
ТекстСообщения = НСтр("ru = 'Отсутствует последний слип чек.'");
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ТекстСообщения);
КонецЕсли;
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<Help xmlns="http://v8.1c.ru/8.3/xcf/extrnprops" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.21">
<Page>ru</Page>
</Help>

View File

@ -0,0 +1,3 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html;charset=utf-8" http-equiv="content-type"></meta><link rel="stylesheet" type="text/css" href="v8help://service_book/service_style"></link><meta name="GENERATOR" content="MSHTML 11.00.9600.18427"></meta></head><body>
<h1>Форма "Управление эквайринговым терминалом".</h1>
<p class="Usual">Форма предназначена для работы c эквайринговым терминалом.</p></body></html>

View 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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonModule uuid="ae1860de-2dee-4d38-a86e-ad5be06b813d">
<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>true</ClientOrdinaryApplication>
<ServerCall>false</ServerCall>
<Privileged>false</Privileged>
<ReturnValuesReuse>DontUse</ReturnValuesReuse>
</Properties>
</CommonModule>
</MetaDataObject>

View File

@ -0,0 +1,313 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2024, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ПрограммныйИнтерфейс
// Подключает на сервере 1С:Предприятия внешнюю компоненту из хранилища внешних компонент,
// выполненную по технологии Native API или COM.
// В модели сервиса разрешено только подключение общих внешних компонент, одобренных администратором сервиса.
//
// Параметры:
// ИмяОбъекта - Строка - идентификатор объекта внешней компоненты.
// ПолноеИмяМакета - Строка - имя макет где содержится компонента.
//
// Возвращаемое значение:
// ОбъектВнешнейКомпоненты - экземпляр объекта внешней компоненты;
//
Функция ПодключитьКомпоненту(Знач ИмяОбъекта, Знач ПолноеИмяМакета) Экспорт
ВнешняяКомпонента = Неопределено;
Изолированно = ИзолированноеПодключенияВнешнихКомпонентНаСервере();
#Если НЕ МобильноеПриложениеСервер Тогда
УстановитьОтключениеБезопасногоРежима(Истина);
// Вызов БСП
Если ОбщегоНазначенияБПО.ДоступноИспользованиеРазделенныхДанных()
И ОбщегоНазначенияБПО.ПодсистемаСуществует("СтандартныеПодсистемы.ВнешниеКомпоненты") Тогда
МодульВнешниеКомпонентыСервер = ОбщегоНазначенияБПО.ОбщийМодуль("ВнешниеКомпонентыСервер");
ПараметрыПодключения = МодульВнешниеКомпонентыСервер.ПараметрыПодключения();
ПараметрыПодключения.Изолированно = Изолированно;
РезультатПодключения = МодульВнешниеКомпонентыСервер.ПодключитьКомпоненту(ИмяОбъекта, , ПараметрыПодключения);
Если РезультатПодключения.Подключено Тогда
ВнешняяКомпонента = РезультатПодключения.ПодключаемыйМодуль;
КонецЕсли;
КонецЕсли;
// Конец Вызов БСП
#КонецЕсли
Если ВнешняяКомпонента = Неопределено Тогда
ВнешняяКомпонента = ПодключитьКомпонентуИзМакета(ИмяОбъекта, ПолноеИмяМакета, Изолированно);
КонецЕсли;
Возврат ВнешняяКомпонента;
КонецФункции
// Информация о внешней компоненте по идентификатору и версии.
//
// Параметры:
// Идентификатор - Строка - идентификатор объекта внешней компоненты.
// Версия - Строка - версия компоненты.
//
// Возвращаемое значение:
// Структура:
// * Существует - Булево - признак отсутствия компоненты.
// * ДоступноРедактирование - Булево - признак того, что компоненту может изменить администратор области.
// * ОписаниеОшибки - Строка - краткое описание ошибки.
// * Идентификатор - Строка - идентификатор объекта внешней компоненты.
// * Версия - Строка - версия компоненты.
// * Наименование - Строка - наименование и краткая информация о компоненте.
//
Функция ИнформацияОКомпоненте(Идентификатор, Версия = Неопределено) Экспорт
Если ОбщегоНазначенияБПО.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульВнешниеКомпонентыВызовСервера = ОбщегоНазначенияБПО.ОбщийМодуль("ВнешниеКомпонентыВызовСервера");
Результат = МодульВнешниеКомпонентыВызовСервера.ИнформацияОКомпоненте(Идентификатор, Версия);
// Конец Вызов БСП
Иначе
Результат = РезультатИнформацияОКомпоненте();
Результат.Идентификатор = Идентификатор;
Результат.Существует = Ложь;
Результат.ОписаниеОшибки = НСтр("ru = 'Внешняя компонента не найдена'");
КонецЕсли;
Возврат Результат;
КонецФункции
// Возвращает информацию о компоненте из файла внешней компоненты.
//
// Параметры:
// ДвоичныеДанные - ДвоичныеДанные - двоичные данные файла компоненты.
// ВыполнятьРазборИнфоФайла - Булево - требуется ли дополнительно анализировать
// данные файла INFO.XML, если он есть.
// ПараметрыПоискаДополнительнойИнформации - см. ВнешниеКомпонентыБПОКлиент.ПараметрыЗагрузки.
//
// Возвращаемое значение:
// Структура:
// * Разобрано - Булево - Истина, если информация о компоненте успешно извлечена.
// * Реквизиты - см. РеквизитыКомпоненты
// * ДвоичныеДанные - Неопределено, ДвоичныеДанные - выгрузка файла компоненты.
// * ДополнительнаяИнформация - Соответствие из КлючИЗначение - информация, полученная по переданным параметрам поиска.
// * ОписаниеОшибки - Строка - текст ошибки в случае, если Разобрано = Ложь.
//
Функция ИнформацияОКомпонентеИзФайла(ДвоичныеДанные, ВыполнятьРазборИнфоФайла = Истина,
Знач ПараметрыПоискаДополнительнойИнформации = Неопределено) Экспорт
Результат = Новый Структура;
Результат.Вставить("Разобрано", Ложь);
Результат.Вставить("Реквизиты", Новый Структура);
Результат.Вставить("ДвоичныеДанные", Неопределено);
Результат.Вставить("ДополнительнаяИнформация", Новый Соответствие);
Результат.Вставить("ОписаниеОшибки", "");
Если ОбщегоНазначенияБПО.ИспользуетсяБСП() Тогда
// Вызов БСП
Если ОбщегоНазначенияБПО.ПодсистемаСуществует("СтандартныеПодсистемы.ВнешниеКомпоненты") Тогда
МодульВнешниеКомпонентыСлужебный = ОбщегоНазначенияБПО.ОбщийМодуль("ВнешниеКомпонентыСлужебный");
Результат = МодульВнешниеКомпонентыСлужебный.ИнформацияОКомпонентеИзФайла(
ДвоичныеДанные, ВыполнятьРазборИнфоФайла, ПараметрыПоискаДополнительнойИнформации);
КонецЕсли;
// Конец Вызов БСП
КонецЕсли;
Возврат Результат;
КонецФункции
// Подключает компоненту, выполненную по технологии Native API и COM.
// Компонента должна храниться в макете конфигурации в виде ZIP-архива.
//
// Параметры:
// Идентификатор - Строка - идентификатор объекта внешней компоненты.
// ПолноеИмяМакета - Строка - полное имя макета конфигурации, хранящего ZIP-архив.
// Изолированно - ТипПодключенияВнешнейКомпоненты
//
// Возвращаемое значение:
// Неопределено, ОбъектВнешнейКомпоненты - экземпляр объекта внешней компоненты;
//
Функция ПодключитьКомпонентуИзМакета(Знач Идентификатор, Знач ПолноеИмяМакета, Знач Изолированно = Ложь) Экспорт
Если ОбщегоНазначенияБПО.ИспользуетсяБСП() Тогда
// Вызов БСП
ОбщегоНазначенияМодуль = ОбщегоНазначенияБПО.ОбщийМодуль("ОбщегоНазначения");
Возврат ОбщегоНазначенияМодуль.ПодключитьКомпонентуИзМакета(Идентификатор, ПолноеИмяМакета, Изолированно);
// Конец Вызов БСП
Иначе
ПодключаемыйМодуль = Неопределено;
Если Не МакетСуществует(ПолноеИмяМакета) Тогда
ВызватьИсключение СтрШаблон(
НСтр("ru = 'Не удалось подключить внешнюю компоненту ""%1"" на сервере
|из %2
|по причине:
|Подключение на сервере не из макета запрещено'"),
Идентификатор,
ПолноеИмяМакета);
КонецЕсли;
Местоположение = ПолноеИмяМакета;
СимволическоеИмя = Идентификатор + "SymbolicName";
#Если Не МобильноеПриложениеСервер Тогда
Результат = ПодключитьВнешнююКомпоненту(Местоположение, СимволическоеИмя, , ТипПодключенияКомпоненты(Изолированно));
#Иначе
Результат = ПодключитьВнешнююКомпоненту(Местоположение, СимволическоеИмя);
#КонецЕсли
Если Результат Тогда
Попытка
ПодключаемыйМодуль = Новый("AddIn." + СимволическоеИмя + "." + Идентификатор);
Если ПодключаемыйМодуль = Неопределено Тогда
ВызватьИсключение НСтр("ru = 'Оператор Новый вернул Неопределено'");
КонецЕсли;
Исключение
ПодключаемыйМодуль = Неопределено;
ТекстОшибки = ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
КонецПопытки;
Если ПодключаемыйМодуль = Неопределено Тогда
ТекстОшибки = СтрШаблон(
НСтр("ru = 'Не удалось создать объект внешней компоненты ""%1"", подключенной на сервере
|из макета ""%2"",
|по причине:
|%3'"),
Идентификатор,
Местоположение,
ТекстОшибки);
ОбщегоНазначенияБПО.ЗаписатьОшибкуВЖурналРегистрации(
НСтр("ru = 'Подключение внешней компоненты на сервере'", ОбщегоНазначенияБПО.КодОсновногоЯзыка()),
ТекстОшибки);
КонецЕсли;
Иначе
ТекстОшибки = СтрШаблон(
НСтр("ru = 'Не удалось подключить внешнюю компоненту ""%1"" на сервере
|из макета ""%2""
|по причине:
|Платформа вернула Ложь при подключении внешней компоненты.'"),
Идентификатор,
Местоположение);
ОбщегоНазначенияБПО.ЗаписатьОшибкуВЖурналРегистрации(
НСтр("ru = 'Подключение внешней компоненты на сервере'", ОбщегоНазначенияБПО.КодОсновногоЯзыка()),
ТекстОшибки);
КонецЕсли;
Возврат ПодключаемыйМодуль;
КонецЕсли;
КонецФункции
// Изолированное подключения внешних компонент на сервере
// Возвращаемое значение:
// Булево - Изолированно
//
Функция ИзолированноеПодключенияВнешнихКомпонентНаСервере() Экспорт
Изолированно = Ложь;
СтандартнаяОбработка = Истина;
ВнешниеКомпонентыБПОПереопределяемый.ИзолированноеПодключенияВнешнихКомпонентНаСервере(Изолированно, СтандартнаяОбработка);
Результат = ?(СтандартнаяОбработка, Ложь, Изолированно);
Возврат Результат;
КонецФункции
// Изолированное подключения внешних компонент на сервере
// Возвращаемое значение:
// Булево - Изолированно
//
Функция ИзолированноеПодключенияВнешнихКомпонентНаКлиенте() Экспорт
Изолированно = Неопределено;
СтандартнаяОбработка = Истина;
ВнешниеКомпонентыБПОПереопределяемый.ИзолированноеПодключенияВнешнихКомпонентНаКлиенте(Изолированно, СтандартнаяОбработка);
Результат = ?(СтандартнаяОбработка, Неопределено, Изолированно);
Возврат Результат;
КонецФункции
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
Функция РезультатИнформацияОКомпоненте()
Результат = Новый Структура;
Результат.Вставить("Существует", Ложь);
Результат.Вставить("ДоступноРедактирование", Ложь);
Результат.Вставить("Идентификатор", "");
Результат.Вставить("Версия", "");
Результат.Вставить("Наименование", "");
Результат.Вставить("ОписаниеОшибки", "");
Возврат Результат;
КонецФункции
// Проверка существования макета по метаданным конфигурации и расширений.
//
// Параметры:
// ПолноеИмяМакета - Строка - полное имя макета.
//
// Возвращаемое значение:
// Булево - признак существования макета.
//
Функция МакетСуществует(ПолноеИмяМакета)
Макет = Метаданные.НайтиПоПолномуИмени(ПолноеИмяМакета);
Если ТипЗнч(Макет) = Тип("ОбъектМетаданных") Тогда
Шаблон = Новый Структура("ТипМакета");
ЗаполнитьЗначенияСвойств(Шаблон, Макет);
ТипМакета = Неопределено;
Если Шаблон.Свойство("ТипМакета", ТипМакета) Тогда
Возврат ТипМакета <> Неопределено;
КонецЕсли;
КонецЕсли;
Возврат Ложь;
КонецФункции
Функция ТипПодключенияКомпоненты(Изолированно) Экспорт
Если Изолированно = Неопределено Тогда
Возврат Неопределено;
КонецЕсли;
#Если Не МобильноеПриложениеСервер И Не МобильныйАвтономныйСервер Тогда
Если Изолированно Тогда
Возврат ТипПодключенияВнешнейКомпоненты.Изолированно;
КонецЕсли;
Возврат ТипПодключенияВнешнейКомпоненты.НеИзолированно;
#Иначе
Возврат Неопределено;
#КонецЕсли
КонецФункции
#КонецОбласти

View 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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonModule uuid="02faccf7-3678-47d5-9272-cf675bd1830d">
<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>true</ClientOrdinaryApplication>
<ServerCall>false</ServerCall>
<Privileged>false</Privileged>
<ReturnValuesReuse>DontUse</ReturnValuesReuse>
</Properties>
</CommonModule>
</MetaDataObject>

View File

@ -0,0 +1,894 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2024, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ПрограммныйИнтерфейс
#Область ПодключениеВнешнихКомпонент
// Параметры для вызова процедуры ВнешниеКомпонентыКлиент.ПодключитьКомпоненту.
//
// Возвращаемое значение:
// Структура:
// * Кэшировать - Булево - (по умолчанию Истина) использовать механизм кэширования компонент на клиенте.
// * ПредложитьУстановить - Булево - (по умолчанию Истина) предлагать устанавливать компоненту.
// * ПредложитьЗагрузить - Булево - (по умолчанию Истина) предлагать загрузить компоненту с сайта ИТС.
// * ТекстПояснения - Строка - для чего нужна компонента и что не будет работать, если ее не устанавливать.
// * ИдентификаторыСозданияОбъектов - Массив из Строка - массив строк идентификаторов создания экземпляров модуля объекта,
// используется только для компонент, у которых есть несколько идентификаторов создания объектов,
// при задании параметр Идентификатор будет использоваться только для определения компоненты.
// * Изолированно - Булево, Неопределено - (по умолчанию Неопределено) если Истина, компонента будет подключена
// изолированно, в этом случае внешняя компонента загружается в отдельный процесс операционной системы;
// Ложь - в этом случае внешняя компонента будет выполняться в том же процессе операционной системы,
// который выполняет код встроенного языка; Неопределено - поддерживается поведение платформы по умолчанию:
// изолированно - если компонентой поддерживается только этот режим, не изолированно - в остальных случаях.
// См. https://its.1c.ru/db/v83doc#bookmark:dev:TI000001866
//
// Пример:
//
// ПараметрыПодключения = ВнешниеКомпонентыКлиент.ПараметрыПодключения();
// ПараметрыПодключения.ТекстПояснения =
// НСтр("ru = 'Для использования сканера штрихкодов требуется
// |внешняя компонента ""1С:Сканеры штрихкода (NativeApi)"".'");
//
Функция ПараметрыПодключения() Экспорт
Если ОбщегоНазначенияБПОКлиент.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульВнешниеКомпонентыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ВнешниеКомпонентыКлиент");
Параметры = МодульВнешниеКомпонентыКлиент.ПараметрыПодключения();
// Конец Вызов БСП
Иначе
Параметры = ПараметрыПодключенияБПО();
КонецЕсли;
Возврат Параметры;
КонецФункции
// Подключает компоненту, выполненную по технологии Native API или COM на клиентском компьютере.
// Для веб-клиента предлагается диалог, подсказывающий пользователю действия по установке.
// Выполняет проверку возможности исполнения компоненты на текущем клиенте пользователя.
//
// Параметры:
// Идентификатор - Строка - идентификатор объекта внешней компоненты.
// Версия - Строка - версия компоненты.
// ПараметрыПодключения - см. ПараметрыПодключения.
//
// Возвращаемое значение:
// Структура - см. РезультатПодключения.
//
Асинх Функция ПодключитьКомпонентуАсинх(Идентификатор, Версия = Неопределено, ПараметрыПодключения = Неопределено) Экспорт
Если ОбщегоНазначенияБПОКлиент.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульВнешниеКомпонентыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ВнешниеКомпонентыКлиент");
Возврат Ждать МодульВнешниеКомпонентыКлиент.ПодключитьКомпонентуАсинх(Идентификатор, Версия, ПараметрыПодключения);
// Конец Вызов БСП
Иначе
РезультатВыполнения = Новый Структура();
РезультатВыполнения.Вставить("Подключено", Ложь);
РезультатВыполнения.Вставить("ОписаниеОшибки", НСтр("ru='Функциональность доступна только при использовании подсистемы БСП.'"));
Возврат РезультатВыполнения;
КонецЕсли;
КонецФункции
// Подключает компоненту, выполненную по технологии Native API или COM на клиентском компьютере.
// Для веб-клиента предлагается диалог, подсказывающий пользователю действия по установке.
// Выполняет проверку возможности исполнения компоненты на текущем клиенте пользователя.
//
// Параметры:
// Оповещение - ОписаниеОповещения - описание оповещения о подключении со следующими параметрами:
// * Результат - см. РезультатПодключения.
// * ДополнительныеПараметры - Структура - значение, которое было указано при создании объекта ОписаниеОповещения.
// Идентификатор - Строка - идентификатор объекта внешней компоненты.
// Версия - Строка - версия компоненты.
// ПараметрыПодключения - см. ВнешниеКомпонентыБПОКлиент.ПараметрыПодключения.
//
Процедура ПодключитьКомпоненту(Оповещение, Идентификатор, Версия = Неопределено, ПараметрыПодключения = Неопределено) Экспорт
Если ОбщегоНазначенияБПОКлиент.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульВнешниеКомпонентыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ВнешниеКомпонентыКлиент");
МодульВнешниеКомпонентыКлиент.ПодключитьКомпоненту(Оповещение, Идентификатор, Версия, ПараметрыПодключения);
// Конец Вызов БСП
Иначе
РезультатВыполнения = Новый Структура();
РезультатВыполнения.Вставить("Подключено", Ложь);
РезультатВыполнения.Вставить("ОписаниеОшибки", НСтр("ru='Функциональность доступна только при использовании подсистемы БСП.'"));
Если Оповещение<>Неопределено Тогда
ВыполнитьОбработкуОповещения(Оповещение, РезультатВыполнения)
КонецЕсли;
КонецЕсли;
КонецПроцедуры
// Подключает компоненту, выполненную по технологии COM, из реестра Windows в асинхронном режиме.
// (не рекомендуется, для обратной совместимости с компонентами 1С 7.7).
//
// Параметры:
// Идентификатор - Строка - идентификатор объекта внешней компоненты.
// ИдентификаторСозданияОбъекта - Строка - идентификатор создания экземпляра модуля объекта
// (только для компонент, у которых идентификатор создания объекта отличается от ProgID).
//
// Возвращаемое значение:
// см. РезультатПодключения.
//
Асинх Функция ПодключитьКомпонентуИзРеестраWindowsАсинх(Идентификатор, ИдентификаторСозданияОбъекта = Неопределено) Экспорт
Если ОбщегоНазначенияБПОКлиент.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульВнешниеКомпонентыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ВнешниеКомпонентыКлиент");
Возврат МодульВнешниеКомпонентыКлиент.ПодключитьКомпонентуИзРеестраWindowsАсинх(Идентификатор, ИдентификаторСозданияОбъекта);
// Конец Вызов БСП
Иначе
РезультатПодключения = РезультатПодключения();
Попытка
РезультатПодключения.Подключено = Ждать ПодключитьВнешнююКомпонентуАсинх("AddIn." + Идентификатор);
Исключение
РезультатПодключения.Подключено = Ложь;
КонецПопытки;
Если РезультатПодключения.Подключено Тогда
Если ИдентификаторСозданияОбъекта = Неопределено Тогда
ИдентификаторСозданияОбъекта = Идентификатор;
КонецЕсли;
Попытка
ПодключаемыйМодуль = Новый("AddIn." + ИдентификаторСозданияОбъекта);
Если ПодключаемыйМодуль = Неопределено Тогда
ВызватьИсключение НСтр("ru = 'Оператор Новый вернул Неопределено'");
КонецЕсли;
РезультатПодключения.ПодключаемыйМодуль = ПодключаемыйМодуль;
Исключение
РезультатПодключения.Подключено = Ложь;
КонецПопытки;
КонецЕсли;
Если Не РезультатПодключения.Подключено Тогда
РезультатПодключения.ОписаниеОшибки = СтрШаблон(
НСтр("ru = 'Не удалось подключить внешнюю компоненту ""%1"" на клиенте
|по причине:
|%2'"),
Идентификатор,
ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
КонецЕсли;
Возврат РезультатПодключения;
КонецЕсли;
КонецФункции
// Подключает компоненту, выполненную по технологии COM, из реестра Windows в асинхронном режиме.
// (не рекомендуется, для обратной совместимости с компонентами 1С 7.7).
//
// Параметры:
// Оповещение - ОписаниеОповещения - описание оповещения о подключении со следующими параметрами:
// * Результат - см. РезультатПодключения
// * ДополнительныеПараметры - Структура - значение, которое было указано при создании объекта ОписаниеОповещения.
// Идентификатор - Строка - идентификатор объекта внешней компоненты.
// ИдентификаторСозданияОбъекта - Строка - идентификатор создания экземпляра модуля объекта
// (только для компонент, у которых идентификатор создания объекта отличается от ProgID).
//
Процедура ПодключитьКомпонентуИзРеестраWindows(Оповещение, Идентификатор, ИдентификаторСозданияОбъекта = Неопределено) Экспорт
Если ОбщегоНазначенияБПОКлиент.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульВнешниеКомпонентыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ВнешниеКомпонентыКлиент");
МодульВнешниеКомпонентыКлиент.ПодключитьКомпонентуИзРеестраWindows(Оповещение, Идентификатор, ИдентификаторСозданияОбъекта);
// Конец Вызов БСП
Иначе
Контекст = Новый Структура;
Контекст.Вставить("Оповещение" , Оповещение);
Контекст.Вставить("Идентификатор" , Идентификатор);
Контекст.Вставить("ИдентификаторСозданияОбъекта", ИдентификаторСозданияОбъекта);
Оповещение = Новый ОписаниеОповещения("ПодключитьКомпонентуИзРеестраWindowsЗавершение", ЭтотОбъект, Контекст);
НачатьПодключениеВнешнейКомпоненты(Оповещение, "AddIn." + Идентификатор);
КонецЕсли;
КонецПроцедуры
// Подключает компоненту, выполненную по технологии Native API и COM, в асинхронном режиме, через механизм ожидания.
// Компонента должна храниться в макете конфигурации в виде ZIP-архива.
//
// Параметры:
// Идентификатор - Строка - идентификатор объекта внешней компоненты.
// ПолноеИмяМакета - Строка - полное имя макета, используемое как местоположение компоненты.
// ПараметрыПодключения - Структура
// - Неопределено - см. функцию ПараметрыПодключения.
//
// Возвращаемое значение:
// см. РезультатПодключения.
//
Асинх Функция ПодключитьКомпонентуИзМакетаАсинх(Идентификатор, ПолноеИмяМакета, ПараметрыПодключения = Неопределено) Экспорт
Если Не ОбщегоНазначенияБПОКлиентСервер.ЭтоМобильныйКлиент() И ОбщегоНазначенияБПОКлиент.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульОбщегоНазначенияКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ОбщегоНазначенияКлиент");
Возврат Ждать МодульОбщегоНазначенияКлиент.ПодключитьКомпонентуИзМакетаАсинх(Идентификатор, ПолноеИмяМакета, ПараметрыПодключения);
// Конец Вызов БСП
Иначе
Если ПараметрыПодключения = Неопределено Тогда
ПараметрыПодключения = ПараметрыПодключенияБПО();
КонецЕсли;
РезультатПодключения = РезультатПодключения();
Если ПустаяСтрока(Идентификатор) Тогда
РезультатПодключения.ОписаниеОшибки = НСтр("ru = 'Идентификатор компоненты не указан.'");
Иначе
СимволическоеИмя = СтрЗаменить(Идентификатор, ".", "_");
Попытка
#Если МобильноеПриложениеКлиент ИЛИ МобильныйКлиент Тогда
РезультатПодключения.Подключено = Ждать ПодключитьВнешнююКомпонентуАсинх(ПолноеИмяМакета, СимволическоеИмя);
#Иначе
РезультатПодключения.Подключено = Ждать ПодключитьВнешнююКомпонентуАсинх(ПолноеИмяМакета, СимволическоеИмя,,
ТипПодключенияКомпоненты(ПараметрыПодключения.Изолированно));
#КонецЕсли
Исключение
РезультатПодключения.Подключено = Ложь;
КонецПопытки;
Если РезультатПодключения.Подключено Тогда
Попытка
ProgID = "AddIn." + СимволическоеИмя + "." + Идентификатор;
#Если МобильноеПриложениеКлиент ИЛИ МобильныйКлиент Тогда
РезультатПодключения.ПодключаемыйМодуль = Новый (ProgID);
#Иначе
РезультатПодключения.ПодключаемыйМодуль = Ждать СоздатьОбъектВнешнейКомпонентыАсинх(ProgID);
#КонецЕсли
Исключение
РезультатПодключения.Подключено = Ложь;
КонецПопытки;
КонецЕсли;
Если Не РезультатПодключения.Подключено Тогда
РезультатПодключения.ОписаниеОшибки = СтрШаблон(
НСтр("ru = 'Не удалось подключить внешнюю компоненту ""%1"" на клиенте
|%2
|по причине:
|%3'"),
Идентификатор,
ПолноеИмяМакета,
ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
КонецЕсли;
Возврат РезультатПодключения;
КонецЕсли;
КонецЕсли;
КонецФункции
// Подключает компоненту, выполненную по технологии Native API и COM, в асинхронном режиме.
// Компонента должна храниться в макете конфигурации в виде ZIP-архива.
//
// Параметры:
// ОповещениеПриПодключении - ОписаниеОповещения - описание оповещения о подключении со следующими параметрами:
// * Результат - см. РезультатПодключения.
// * ДополнительныеПараметры - Структура - значение, которое было указано при создании объекта ОписаниеОповещения.
// Идентификатор - Строка - идентификатор объекта внешней компоненты.
// ПолноеИмяМакета - Строка - полное имя макета, используемое как местоположение компоненты.
// ПараметрыПодключения - Структура
// - Неопределено - см. функцию ПараметрыПодключения.
Процедура ПодключитьКомпонентуИзМакета(ОповещениеПриПодключении, Идентификатор, ПолноеИмяМакета, ПараметрыПодключения = Неопределено) Экспорт
Если Не ОбщегоНазначенияБПОКлиентСервер.ЭтоМобильныйКлиент() И ОбщегоНазначенияБПОКлиент.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульОбщегоНазначенияКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ОбщегоНазначенияКлиент");
МодульОбщегоНазначенияКлиент.ПодключитьКомпонентуИзМакета(ОповещениеПриПодключении, Идентификатор, ПолноеИмяМакета, ПараметрыПодключения);
// Конец Вызов БСП
Иначе
Результат = РезультатПодключения();
Если ПустаяСтрока(Идентификатор) Тогда
Результат.ОписаниеОшибки = НСтр("ru = 'Идентификатор компоненты не указан.'");
ВыполнитьОбработкуОповещения(ОповещениеПриПодключении, Результат);
Иначе
Контекст = Новый Структура();
Контекст.Вставить("Идентификатор", Идентификатор);
Контекст.Вставить("Оповещение", ОповещениеПриПодключении);
Оповещение = Новый ОписаниеОповещения("ПодключитьКомпонентуИзМакетаЗавершение", ЭтотОбъект, Контекст);
НачатьПодключениеВнешнейКомпоненты(Оповещение, ПолноеИмяМакета, СтрЗаменить(Идентификатор, ".", "_"));
КонецЕсли;
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область УстановкаВнешнихКомпонент
// Структура параметров для процедуры ВнешниеКомпонентыКлиент.УстановитьКомпоненту.
//
// Возвращаемое значение:
// Структура:
// * ТекстПояснения - Строка - для чего нужна компонента и что не будет работать, если ее не устанавливать.
// * ПредложитьЗагрузить - Булево - предложить загрузить компоненту с сайта ИТС
// * ПредложитьУстановить - Булево - (по умолчанию Ложь) предлагать устанавливать компоненту.
//
// Пример:
//
// ПараметрыУстановки = ВнешниеКомпонентыКлиент.ПараметрыУстановки();
// ПараметрыУстановки.ТекстПояснения =
// НСтр("ru = 'Для использования сканера штрихкодов требуется
// |внешняя компонента ""1С:Сканеры штрихкода (NativeApi)"".'");
//
Функция ПараметрыУстановки() Экспорт
Если ОбщегоНазначенияБПОКлиент.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульВнешниеКомпонентыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ВнешниеКомпонентыКлиент");
Параметры = МодульВнешниеКомпонентыКлиент.ПараметрыУстановки();
// Конец Вызов БСП
Иначе
Параметры = ПараметрыУстановкиБПО();
КонецЕсли;
Возврат Параметры;
КонецФункции
// Устанавливает компоненту, выполненную по технологии Native API и COM асинхронном режиме.
// Выполняет проверку возможности исполнения компоненты на текущем клиенте пользователя.
//
// Параметры:
// Идентификатор - Строка - идентификатор объекта внешней компоненты.
// Версия - Строка - версия компоненты.
// ПараметрыУстановки - см. ПараметрыУстановки.
//
// Возвращаемое значение:
// см. РезультатУстановки.
//
Асинх Функция УстановитьКомпонентуАсинх(Идентификатор, Версия = Неопределено, ПараметрыУстановки = Неопределено) Экспорт
Если ОбщегоНазначенияБПОКлиент.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульВнешниеКомпонентыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ВнешниеКомпонентыКлиент");
РезультатУстановки = Ждать МодульВнешниеКомпонентыКлиент.УстановитьКомпонентуАсинх(Идентификатор, Версия,
ПараметрыУстановки);
// Конец Вызов БСП
Иначе
РезультатУстановки = РезультатУстановки();
РезультатУстановки.Установлено = Ложь;
РезультатУстановки.ОписаниеОшибки = НСтр("ru='Функциональность доступна только при использовании подсистемы БСП.'");
КонецЕсли;
Возврат РезультатУстановки;
КонецФункции
// Устанавливает компоненту, выполненную по технологии Native API и COM асинхронном режиме.
// Выполняет проверку возможности исполнения компоненты на текущем клиенте пользователя.
//
// Параметры:
// Оповещение - ОписаниеОповещения - описание оповещения об установке внешней компоненты:
// * Результат - см. РезультатУстановки.
// * ДополнительныеПараметры - Структура - значение, которое было указано при создании объекта ОписаниеОповещения.
// Идентификатор - Строка - идентификатор объекта внешней компоненты.
// Версия - Строка - версия компоненты.
// ПараметрыУстановки - см. ПараметрыУстановки.
//
Процедура УстановитьКомпоненту(Оповещение, Идентификатор, Версия = Неопределено, ПараметрыУстановки = Неопределено) Экспорт
Если ОбщегоНазначенияБПОКлиент.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульВнешниеКомпонентыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ВнешниеКомпонентыКлиент");
МодульВнешниеКомпонентыКлиент.УстановитьКомпоненту(Оповещение, Идентификатор, Версия, ПараметрыУстановки);
// Конец Вызов БСП
Иначе
РезультатУстановки = РезультатУстановки();
РезультатУстановки.Установлено = Ложь;
РезультатУстановки.ОписаниеОшибки = НСтр("ru='Функциональность доступна только при использовании подсистемы БСП.'");
Если Оповещение <> Неопределено Тогда
ВыполнитьОбработкуОповещения(Оповещение, РезультатУстановки);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
// Устанавливает компоненту, выполненную по технологии Native API и COM асинхронном режиме.
// Компонента должна храниться в макете конфигурации в виде ZIP-архива.
//
// Параметры:
// ПолноеИмяМакета - Строка - полное имя макета, используемое как местоположение компоненты.
// ПараметрыУстановки - Структура
// - Неопределено - см. функцию ПараметрыУстановки.
//
// Возвращаемое значение:
// см. РезультатУстановки.
//
Асинх Функция УстановитьКомпонентуИзМакетаАсинх(ПолноеИмяМакета, ПараметрыУстановки = Неопределено) Экспорт
Если Не ОбщегоНазначенияБПОКлиентСервер.ЭтоМобильныйКлиент() И ОбщегоНазначенияБПОКлиент.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульОбщегоНазначенияКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ОбщегоНазначенияКлиент");
РезультатУстановки = Ждать МодульОбщегоНазначенияКлиент.УстановитьКомпонентуИзМакетаАсинх(ПолноеИмяМакета, ПараметрыУстановки);
// Конец Вызов БСП
Иначе
Если ПараметрыУстановки <> Неопределено Тогда
ПоказатьПредупреждение(Неопределено, ПараметрыУстановки.ТекстПояснения);
КонецЕсли;
РезультатУстановки = РезультатУстановки();
Попытка
Ждать УстановитьВнешнююКомпонентуАсинх(ПолноеИмяМакета);
РезультатУстановки.Установлено = Истина;
Исключение
РезультатУстановки.Установлено = Ложь;
РезультатУстановки.ОписаниеОшибки = СтрШаблон(
НСтр("ru = 'Не удалось установить внешнюю компоненту ""%1"" на клиенте
|по причине:
|%2'"),
ПолноеИмяМакета,
ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
КонецПопытки;
КонецЕсли;
Возврат РезультатУстановки;
КонецФункции
// Устанавливает компоненту, выполненную по технологии Native API и COM асинхронном режиме.
// Компонента должна храниться в макете конфигурации в виде ZIP-архива.
//
// Параметры:
// ОповещениеЗавершения - ОписаниеОповещения - описание оповещения об установке внешней компоненты:
// * Результат - см. РезультатУстановки.
// * ДополнительныеПараметры - Структура - значение, которое было указано при создании объекта ОписаниеОповещения.
// ПолноеИмяМакета - Строка - полное имя макета, используемое как местоположение компоненты.
// ПараметрыУстановки - Структура
// - Неопределено - см. функцию ПараметрыУстановки.
//
Процедура УстановитьКомпонентуИзМакета(ОповещениеЗавершения, ПолноеИмяМакета, ПараметрыУстановки = Неопределено) Экспорт
Если Не ОбщегоНазначенияБПОКлиентСервер.ЭтоМобильныйКлиент() И ОбщегоНазначенияБПОКлиент.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульОбщегоНазначенияКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ОбщегоНазначенияКлиент");
МодульОбщегоНазначенияКлиент.УстановитьКомпонентуИзМакета(ОповещениеЗавершения, ПолноеИмяМакета, ПараметрыУстановки);
// Конец Вызов БСП
Иначе
Контекст = Новый Структура();
Контекст.Вставить("ПолноеИмяМакета", ПолноеИмяМакета);
Контекст.Вставить("Оповещение", ОповещениеЗавершения);
Контекст.Вставить("ПараметрыУстановки", ПараметрыУстановки);
Оповещение = Новый ОписаниеОповещения("УстановитьКомпонентуИзМакетаЗавершение", ЭтотОбъект, Контекст);
НачатьУстановкуВнешнейКомпоненты(Оповещение, ПолноеИмяМакета);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ЗагрузкаВнешнихКомпонент
// Возвращает структуру параметров для описания правил поиска дополнительной информации в составе внешней компоненты,
// см. процедуру ЗагрузитьКомпонентуИзФайла.
//
// Возвращаемое значение:
// Структура:
// * ИмяФайлаXML - Строка - (необязательный) имя файла в составе компоненты, из которого будет извлечена информация.
// * ВыражениеXPath - Строка - (необязательный) XPath путь до информации в файле.
//
// Пример:
//
// ПараметрыЗагрузки = ВнешниеКомпонентыКлиент.ПараметрыПоискаДополнительнойИнформации();
// ПараметрыЗагрузки.ИмяФайлаXML = "INFO.XML";
// ПараметрыЗагрузки.ВыражениеXPath = "//drivers/component/@type";
//
Функция ПараметрыПоискаДополнительнойИнформации() Экспорт
Если ОбщегоНазначенияБПОКлиент.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульВнешниеКомпонентыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ВнешниеКомпонентыКлиент");
Параметры = МодульВнешниеКомпонентыКлиент.ПараметрыПоискаДополнительнойИнформации();
// Конец Вызов БСП
Иначе
Параметры = Новый Структура;
Параметры.Вставить("ИмяФайлаXML", "");
Параметры.Вставить("ВыражениеXPath", "");
КонецЕсли;
Возврат Параметры;
КонецФункции
// Структура параметров для процедуру ВнешниеКомпонентыКлиент.ЗагрузитьКомпонентуИзФайла.
//
// Возвращаемое значение:
// Структура:
// * Идентификатор - Строка -(необязательный) идентификатор объекта внешней компоненты.
// * Версия - Строка - (необязательный) версия компоненты.
// * ПараметрыПоискаДополнительнойИнформации - Соответствие из КлючИЗначение - (необязательный) параметры:
// ** Ключ - Строка - идентификатор дополнительной запрошенной информации.
// ** Значение - см. ПараметрыПоискаДополнительнойИнформации.
// Пример:
//
// ПараметрыЗагрузки = ВнешниеКомпонентыКлиент.ПараметрыЗагрузки();
// ПараметрыЗагрузки.Идентификатор = "InputDevice";
// ПараметрыЗагрузки.Версия = "8.1.7.10";
//
Функция ПараметрыЗагрузки() Экспорт
Если ОбщегоНазначенияБПОКлиент.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульВнешниеКомпонентыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ВнешниеКомпонентыКлиент");
Параметры = МодульВнешниеКомпонентыКлиент.ПараметрыЗагрузки();
// Конец Вызов БСП
Иначе
Параметры = Новый Структура;
Параметры.Вставить("Идентификатор", "");
Параметры.Вставить("Версия", "");
Параметры.Вставить("ПараметрыПоискаДополнительнойИнформации", Новый Соответствие);
КонецЕсли;
Возврат Параметры;
КонецФункции
// Загружает файл компоненты в справочник внешних компонент в асинхронном режиме.
//
// Параметры:
// Оповещение - ОписаниеОповещения - описание оповещения об установке внешней компоненты:
// * Результат - Структура - результат загрузки компоненты:
// ** Загружена - Булево - признак загрузки.
// ** Идентификатор - Строка - идентификатор объекта внешней компоненты.
// ** Версия - Строка - версия загруженной компоненты.
// ** Наименование - Строка - наименование загруженной компоненты.
// ** ДополнительнаяИнформация - Соответствие из КлючИЗначение - дополнительная информация о компоненте,
// если не запрашивалась - пустое соответствие:
// *** Ключ - см. ПараметрыПоискаДополнительнойИнформации.
// *** Значение - см. ПараметрыПоискаДополнительнойИнформации.
// * ДополнительныеПараметры - Структура - значение, которое было указано при создании объекта ОписаниеОповещения.
// ПараметрыЗагрузки - см. ПараметрыЗагрузки.
//
// Пример:
//
// ПараметрыЗагрузки = ВнешниеКомпонентыКлиент.ПараметрыЗагрузки();
// ПараметрыЗагрузки.Идентификатор = "InputDevice";
// ПараметрыЗагрузки.Версия = "8.1.7.10";
//
// Оповещение = Новый ОписаниеОповещения("ЗагрузитьКомпонентуИзФайлаПослеЗагрузкиКомпоненты", ЭтотОбъект);
//
// ВнешниеКомпонентыКлиент.ЗагрузитьКомпонентуИзФайла(Оповещение, ПараметрыЗагрузки);
//
// &НаКлиенте
// Процедура ЗагрузитьКомпонентуИзФайлаПослеЗагрузкиКомпоненты(Результат, ДополнительныеПараметры) Экспорт
//
// Если Результат.Загружено Тогда
// Идентификатор = Результат.Идентификатор;
// Версия = Результат.Версия;
// КонецЕсли;
//
// КонецПроцедуры
//
Процедура ЗагрузитьКомпонентуИзФайла(Оповещение, ПараметрыЗагрузки = Неопределено) Экспорт
Если ОбщегоНазначенияБПОКлиент.ИспользуетсяБСП() Тогда
// Вызов БСП
МодульВнешниеКомпонентыКлиент = ОбщегоНазначенияБПОКлиент.ОбщийМодуль("ВнешниеКомпонентыКлиент");
МодульВнешниеКомпонентыКлиент.ЗагрузитьКомпонентуИзФайла(Оповещение, ПараметрыЗагрузки);
// Конец Вызов БСП
Иначе
РезультатВыполнения = Новый Структура();
РезультатВыполнения.Вставить("Загружена", Ложь);
РезультатВыполнения.Вставить("ОписаниеОшибки", НСтр("ru='Функциональность доступна только при использовании подсистемы БСП.'"));
ВыполнитьОбработкуОповещения(Оповещение, РезультатВыполнения);
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#КонецОбласти
#Область СлужебныйПрограммныйИнтерфейс
// Продолжение процедуры ПодключитьКомпонентуИзРеестраWindows.
//
// Параметры:
// Подключено - Булево
// Контекст - Структура:
// * Оповещение - ОписаниеОповещения
// * Идентификатор - Строка
// * ИдентификаторСозданияОбъектов - Строка
Процедура ПодключитьКомпонентуИзРеестраWindowsЗавершение(Подключено, Контекст) Экспорт
Результат = РезультатПодключения();
ИдентификаторСозданияОбъекта = ?(
Контекст.ИдентификаторСозданияОбъекта = Неопределено,
Контекст.Идентификатор,
Контекст.ИдентификаторСозданияОбъекта);
Если Подключено Тогда
Попытка
ПодключаемыйМодуль = Новый("AddIn." + ИдентификаторСозданияОбъекта);
Если ПодключаемыйМодуль = Неопределено Тогда
ВызватьИсключение НСтр("ru = 'Оператор Новый вернул Неопределено'");
КонецЕсли;
Результат.Подключено = Истина;
Результат.ПодключаемыйМодуль = ПодключаемыйМодуль;
Исключение
Результат.ОписаниеОшибки = ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
КонецПопытки;
Иначе
Результат.ОписаниеОшибки = СтрШаблон(
НСтр("ru='Не удалось подключить внешнюю компоненту %1 на клиенте'"),
ИдентификаторСозданияОбъекта);
КонецЕсли;
Если Контекст.Оповещение<>Неопределено Тогда
ВыполнитьОбработкуОповещения(Контекст.Оповещение, Результат);
КонецЕсли;
КонецПроцедуры
// Продолжение процедуры ПодключитьКомпонентуИзМакета.
//
// Параметры:
// Подключено - Булево
// Контекст - Структура:
// * Оповещение - ОписаниеОповещения
// * Идентификатор - Строка
// * ИдентификаторСозданияОбъектов - Строка
Процедура ПодключитьКомпонентуИзМакетаЗавершение(Подключено, Контекст) Экспорт
Результат = РезультатПодключения();
Если Подключено Тогда
Попытка
ProgID = "AddIn." + СтрЗаменить(Контекст.Идентификатор, ".", "_") + "." + Контекст.Идентификатор;
Результат.ПодключаемыйМодуль = Новый (ProgID);
Результат.Подключено = Истина;
Исключение
Результат.ОписаниеОшибки = ОбработкаОшибок.ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
КонецПопытки;
КонецЕсли;
Если Контекст.Оповещение<>Неопределено Тогда
ВыполнитьОбработкуОповещения(Контекст.Оповещение, Результат);
КонецЕсли;
КонецПроцедуры
Процедура УстановитьКомпонентуИзМакетаЗавершение(Контекст) Экспорт
Результат = РезультатУстановки();
Результат.Установлено = Истина;
ПараметрыУстановки = Контекст.ПараметрыУстановки;
Если ПараметрыУстановки <> Неопределено Тогда
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(ПараметрыУстановки.ТекстПояснения);
КонецЕсли;
Если Контекст.Оповещение <> Неопределено Тогда
ВыполнитьОбработкуОповещения(Контекст.Оповещение, Результат);
КонецЕсли;
КонецПроцедуры
#Если Не ВебКлиент Тогда
// Выполняет переустановку компонент из переданного массива макетов рекурсивно
//
// Параметры:
// ОборудованиеДляПереустановки - Массив из Структура
//
Процедура ПереустановитьКомпоненты(ОборудованиеДляПереустановки) Экспорт
Контекст = Новый Структура();
Контекст.Вставить("ОборудованиеДляПереустановки", Новый Массив);
Для Каждого ОписаниеОборудованияДляПереустановки Из ОборудованиеДляПереустановки Цикл
Контекст.ОборудованиеДляПереустановки.Добавить(ОписаниеОборудованияДляПереустановки);
КонецЦикла;
// Начать рекурсивную установку компонентов из макетов
Результат = РезультатУстановки();
Результат.Установлено = Истина;
ОповещениеУстановки = Новый ОписаниеОповещения("УстановитьКомпонентуИзМакетаРекурсивно", ЭтотОбъект, Контекст);
ВыполнитьОбработкуОповещения(ОповещениеУстановки, Результат)
КонецПроцедуры
// Выполняет рекурсивно установку компоненты
//
// Параметры:
// Результат - Структура - результат установки компоненты:
// * Установлено - Булево - признак установки.
// * ОписаниеОшибки - Строка - краткое описание ошибки. При отмене пользователем пустая строка.
// Контекст - Структура:
// * ОборудованиеДляПереустановки - Массив из Структура
//
Процедура УстановитьКомпонентуИзМакетаРекурсивно(Результат, Контекст) Экспорт
Если Не Результат.Установлено Тогда
ОбщегоНазначенияБПОКлиент.СообщитьПользователю(СтрШаблон(НСтр("ru = 'Ошибка установки компоненты: %1'"), Результат.ОписаниеОшибки));
КонецЕсли;
ОборудованиеДляПереустановки = Контекст.ОборудованиеДляПереустановки;
Если ОборудованиеДляПереустановки.Количество()=0 Тогда
Возврат;
КонецЕсли;
ПоследнийИндекс = ОборудованиеДляПереустановки.ВГраница();
ОписаниеОборудованияДляПереустановки = ОборудованиеДляПереустановки[ПоследнийИндекс];
ОборудованиеДляПереустановки.Удалить(ПоследнийИндекс);
ПараметрыУстановки = ПараметрыУстановки();
ПараметрыУстановки.ТекстПояснения = СтрШаблон(НСтр("ru = 'Новая версия компоненты:
|%1.
|Версия: %2'
|"),
ОписаниеОборудованияДляПереустановки.Наименование,
ОписаниеОборудованияДляПереустановки.Версия);
ОповещениеУстановки = Новый ОписаниеОповещения("УстановитьКомпонентуИзМакетаРекурсивно", ЭтотОбъект, Контекст);
УстановитьКомпонентуИзМакета(ОповещениеУстановки, ОписаниеОборудованияДляПереустановки.ИмяМакетаДрайвера, ПараметрыУстановки);
КонецПроцедуры
#КонецЕсли
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
// Параметры для вызова процедуры ВнешниеКомпонентыКлиент.ПодключитьКомпоненту.
//
// Возвращаемое значение:
// Структура:
// * Кэшировать - Булево - (по умолчанию Истина) использовать механизм кэширования компонент на клиенте.
// * ПредложитьУстановить - Булево - (по умолчанию Истина) предлагать устанавливать компоненту.
// * ПредложитьЗагрузить - Булево - (по умолчанию Истина) предлагать загрузить компоненту с сайта ИТС.
// * ТекстПояснения - Строка - для чего нужна компонента и что не будет работать, если ее не устанавливать.
// * ИдентификаторыСозданияОбъектов - Массив из Строка - массив строк идентификаторов создания экземпляров модуля объекта,
// используется только для компонент, у которых есть несколько идентификаторов создания объектов,
// при задании параметр Идентификатор будет использоваться только для определения компоненты.
// * Изолированно - Булево, Неопределено - (по умолчанию Неопределено) если Истина, компонента будет подключена
// изолированно, в этом случае внешняя компонента загружается в отдельный процесс операционной системы;
// Ложь - в этом случае внешняя компонента будет выполняться в том же процессе операционной системы,
// который выполняет код встроенного языка; Неопределено - поддерживается поведение платформы по умолчанию:
// изолированно - если компонентой поддерживается только этот режим, не изолированно - в остальных случаях.
// См. https://its.1c.ru/db/v83doc#bookmark:dev:TI000001866
//
// Пример:
//
// ПараметрыПодключения = ВнешниеКомпонентыКлиент.ПараметрыПодключения();
// ПараметрыПодключения.ТекстПояснения =
// НСтр("ru = 'Для использования сканера штрихкодов требуется
// |внешняя компонента ""1С:Сканеры штрихкода (NativeApi)"".'");
//
Функция ПараметрыПодключенияБПО()
Параметры = Новый Структура;
Параметры.Вставить("Кэшировать", Истина);
Параметры.Вставить("ПредложитьУстановить", Истина);
Параметры.Вставить("ПредложитьЗагрузить", Истина);
Параметры.Вставить("ТекстПояснения", "");
Параметры.Вставить("ИдентификаторыСозданияОбъектов", Новый Массив);
Параметры.Вставить("Изолированно", Неопределено);
Параметры.Вставить("ОбновлятьАвтоматически", Истина);
Возврат Параметры;
КонецФункции
// Структура параметров для процедуры ВнешниеКомпонентыКлиент.УстановитьКомпоненту.
//
// Возвращаемое значение:
// Структура:
// * ТекстПояснения - Строка - для чего нужна компонента и что не будет работать, если ее не устанавливать.
// * ПредложитьЗагрузить - Булево - предложить загрузить компоненту с сайта ИТС
// * ПредложитьУстановить - Булево - (по умолчанию Ложь) предлагать устанавливать компоненту.
//
Функция ПараметрыУстановкиБПО()
Параметры = Новый Структура;
Параметры.Вставить("ТекстПояснения", "");
Параметры.Вставить("ПредложитьЗагрузить", Истина);
Параметры.Вставить("ПредложитьУстановить", Ложь);
Возврат Параметры;
КонецФункции
// Результат подключения компоненты.
//
// Возвращаемое значение:
// Структура:
// * Подключено - Булево - признак подключения.
// * ПодключаемыйМодуль - Неопределено, ОбъектВнешнейКомпоненты - экземпляр объекта внешней компоненты;
// - ФиксированноеСоответствие из КлючИЗначение - экземпляры объектов внешней компоненты,
// указанные в ПараметрыПодключения.ИдентификаторыСозданияОбъектов:
// ** Ключ - Строка - идентификатор внешней компоненты;
// ** Значение - ОбъектВнешнейКомпоненты - экземпляр объекта.
// * ОписаниеОшибки - Строка - краткое описание ошибки. При отмене пользователем пустая строка.
//
Функция РезультатПодключения() Экспорт
Результат = Новый Структура;
Результат.Вставить("Подключено", Ложь);
Результат.Вставить("ОписаниеОшибки", "");
Результат.Вставить("ПодключаемыйМодуль", Неопределено);
Возврат Результат;
КонецФункции
// Результат установки компоненты.
//
// Возвращаемое значение:
// Структура:
// * Установлено - Булево
// * ОписаниеОшибки - Строка
//
Функция РезультатУстановки() Экспорт
Результат = Новый Структура;
Результат.Вставить("Установлено", Ложь);
Результат.Вставить("ОписаниеОшибки", "");
Возврат Результат;
КонецФункции
Функция ТипПодключенияКомпоненты(Изолированно) Экспорт
Если Изолированно = Неопределено Тогда
Возврат Неопределено;
КонецЕсли;
#Если Не ВебКлиент И Не МобильныйКлиент И Не МобильноеПриложениеКлиент Тогда
Если Изолированно Тогда
Возврат ТипПодключенияВнешнейКомпоненты.Изолированно;
КонецЕсли;
Возврат ТипПодключенияВнешнейКомпоненты.НеИзолированно;
#Иначе
Возврат Неопределено;
#КонецЕсли
КонецФункции
#КонецОбласти

View 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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonModule uuid="336b874f-2029-4ffc-98d7-fae8e48d3e07">
<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>true</ClientOrdinaryApplication>
<ServerCall>false</ServerCall>
<Privileged>false</Privileged>
<ReturnValuesReuse>DontUse</ReturnValuesReuse>
</Properties>
</CommonModule>
</MetaDataObject>

View File

@ -0,0 +1,35 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2024, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ПрограммныйИнтерфейс
// Переопределяемая процедура для определения режима вызова подключения внешних компонент
//
// Параметры:
// Изолированно - Булево - Изолированно
// СтандартнаяОбработка - Булево - признак стандартной обработки.
//
Процедура ИзолированноеПодключенияВнешнихКомпонентНаСервере(Изолированно, СтандартнаяОбработка) Экспорт
КонецПроцедуры
// Переопределяемая процедура для определения режима вызова подключения внешних компонент
//
// Параметры:
// Изолированно - Булево - Изолированно
// СтандартнаяОбработка - Булево - признак стандартной обработки.
//
Процедура ИзолированноеПодключенияВнешнихКомпонентНаКлиенте(Изолированно, СтандартнаяОбработка) Экспорт
КонецПроцедуры
#КонецОбласти

View 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:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" 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.21">
<CommonModule uuid="9aa0a0cb-9547-4868-9495-b00f3ecd2b3a">
<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>true</ClientOrdinaryApplication>
<ServerCall>false</ServerCall>
<Privileged>false</Privileged>
<ReturnValuesReuse>DontUse</ReturnValuesReuse>
</Properties>
</CommonModule>
</MetaDataObject>

View File

@ -0,0 +1,590 @@
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2024, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
#Область ПрограммныйИнтерфейс
// Пустая структура для заполнения параметра "ПараметрыШтрихкода" используемого для получения изображения штрих кода.
//
// Возвращаемое значение:
// Структура:
// * Ширина - Число - ширина изображения штрих кода.
// * Высота - Число - высота изображения штрих кода.
// * ТипКода - Число - штрихкода.
// Возможные значение:
// 99 - Авто выбор
// 0 - EAN8
// 1 - EAN13
// 2 - EAN128
// 3 - Code39
// 4 - Code128
// 5 - Code16k
// 6 - PDF417
// 7 - Standart (Industrial) 2 of 5
// 8 - Interleaved 2 of 5
// 9 - Code39 Расширение
// 10 - Code93
// 11 - ITF14
// 12 - RSS14
// 14 - EAN13AddOn2
// 15 - EAN13AddOn5
// 16 - QR
// 17 - GS1DataBarExpandedStacked
// 18 - Datamatrix ASCII
// 19 - Datamatrix BASE256
// 20 - Datamatrix TEXT
// 21 - Datamatrix C40
// 22 - Datamatrix X12
// 23 - Datamatrix EDIFACT
// 24 - Datamatrix GS1ASCII
// 25 - Aztec
// * ОтображатьТекст - Булево - отображать HRI теста для штрихкода.
// * РазмерШрифта - Число - размер шрифта HRI теста для штрихкода.
// * УголПоворота - Число - угол поворота.
// Возможные значения: 0, 90, 180, 270.
// * Штрихкод - Строка - значение штрихкод в виде строки или Base64.
// * ТипВходныхДанных - Число - тип входных данных
// Возможные значения: 0 - Строка, 1 - Base64
// * ПрозрачныйФон - Булево - прозрачный фон изображения штрихкода.
// * Инвертирован - Булево - цвета пикселей ШК будут изменены на обратные.
// * УровеньКоррекцииQR - Число - уровень коррекции штрихкода QR.
// Возможные значения: 0 - L, 1 - M, 2 - Q, 3 - H.
// * Масштабировать - Булево - масштабировать изображение штрихкода.
// * СохранятьПропорции - Булево - сохранять пропорции изображения штрихкода.
// * ВертикальноеВыравнивание - Число - вертикальное выравнивание штрихкода.
// Возможные значения: 1 - По верхнему краю, 2 - По центру, 3 - По нижнему краю
// * GS1DatabarКоличествоСтрок - Число - количество строк в штрихкоде GS1Databar.
// * УбратьЛишнийФон - Булево
// * ЛоготипКартинка - Строка - строка с base64 представлением png картинки логотипа.
// * ЛоготипРазмерПроцентОтШК - Число - процент от генерированного QR для вписывания логотипа.
//
Функция ПараметрыГенерацииШтрихкода() Экспорт
ПараметрыШтрихкода = Новый Структура;
ПараметрыШтрихкода.Вставить("Ширина" , 100);
ПараметрыШтрихкода.Вставить("Высота" , 100);
ПараметрыШтрихкода.Вставить("ТипКода" , 99);
ПараметрыШтрихкода.Вставить("ОтображатьТекст" , Истина);
ПараметрыШтрихкода.Вставить("РазмерШрифта" , 12);
ПараметрыШтрихкода.Вставить("УголПоворота" , 0);
ПараметрыШтрихкода.Вставить("Штрихкод" , "");
ПараметрыШтрихкода.Вставить("ПрозрачныйФон" , Истина);
ПараметрыШтрихкода.Вставить("Инвертирован" , Ложь);
ПараметрыШтрихкода.Вставить("УровеньКоррекцииQR", 1);
ПараметрыШтрихкода.Вставить("Масштабировать" , Ложь);
ПараметрыШтрихкода.Вставить("СохранятьПропорции" , Ложь);
ПараметрыШтрихкода.Вставить("ВертикальноеВыравнивание" , 1);
ПараметрыШтрихкода.Вставить("GS1DatabarКоличествоСтрок", 2);
ПараметрыШтрихкода.Вставить("ТипВходныхДанных", 0);
ПараметрыШтрихкода.Вставить("УбратьЛишнийФон" , Ложь);
ПараметрыШтрихкода.Вставить("ЛоготипКартинка");
ПараметрыШтрихкода.Вставить("ЛоготипРазмерПроцентОтШК");
ПараметрыШтрихкода.Вставить("НовыйВызовКомпоненты", Ложь);
Возврат ПараметрыШтрихкода;
КонецФункции
// Формирование изображения штрихкода.
//
// Параметры:
// ПараметрыШтрихкода - см. ГенерацияШтрихкода.ПараметрыГенерацииШтрихкода.
//
// Возвращаемое значение:
// Структура:
// Результат - Булево - результат генерации штрихкода.
// ДвоичныеДанные - ДвоичныеДанные - двоичные данные изображения штрихкода.
// Картинка - Картинка - картинка с сформированным штрихкодом или НЕОПРЕДЕЛЕНО.
//
Функция ИзображениеШтрихкода(ПараметрыШтрихкода) Экспорт
СистемнаяИнформация = Новый СистемнаяИнформация;
ТипПлатформыКомпоненты = Строка(СистемнаяИнформация.ТипПлатформы);
ВнешняяКомпонента = ГенерацияШтрихкодаСерверПовтИсп.ПодключитьКомпонентуГенерацииИзображенияШтрихкода(ТипПлатформыКомпоненты);
Если ВнешняяКомпонента = Неопределено Тогда
МодульОбщегоНазначения = МодульОбщегоНазначения();
ТекстСообщения = НСтр("ru = 'Ошибка подключения внешней компоненты печати штрихкода.'", МодульОбщегоНазначения.КодОсновногоЯзыка());
#Если НЕ МобильноеПриложениеСервер Тогда
ЗаписьЖурналаРегистрации(НСтр("ru = 'Ошибка генерации штрихкода'",
МодульОбщегоНазначения.КодОсновногоЯзыка()),
УровеньЖурналаРегистрации.Ошибка,,,
ТекстСообщения);
#КонецЕсли
ВызватьИсключение ТекстСообщения;
КонецЕсли;
Если ПараметрыШтрихкода.Свойство("НовыйВызовКомпоненты") И ПараметрыШтрихкода.НовыйВызовКомпоненты Тогда
Возврат ПодготовитьИзображениеШтрихкода(ВнешняяКомпонента, ПараметрыШтрихкода);
Иначе
Возврат ПодготовитьИзображениеШтрихкодаСвойства(ВнешняяКомпонента, ПараметрыШтрихкода);
КонецЕсли;
КонецФункции
// Возвращает двоичные данные для формирования QR-кода.
//
// Параметры:
// QRСтрока - Строка - данные, которые необходимо разместить в QR-коде.
//
// УровеньКоррекции - Число - уровень погрешности изображения, при котором данный QR-код все еще возможно 100%
// распознать.
// Параметр должен иметь тип целого и принимать одно из 4 допустимых значений:
// 0 (7 % погрешности), 1 (15 % погрешности), 2 (25 % погрешности), 3 (35 % погрешности).
//
// Размер - Число - определяет длину стороны выходного изображения в пикселях.
// Если минимально возможный размер изображения больше этого параметра - код сформирован не будет.
//
// Возвращаемое значение:
// ДвоичныеДанные - буфер, содержащий байты PNG-изображения QR-кода.
//
// Пример:
//
// // Выводим на печать QR-код, содержащий в себе информацию зашифрованную по УФЭБС.
//
// QRСтрока = УправлениеПечатью.ФорматнаяСтрокаУФЭБС(РеквизитыПлатежа);
// ТекстОшибки = "";
// ДанныеQRКода = УправлениеПечатью.ДанныеQRКода(QRСтрока, 0, 190, ТекстОшибки);
// Если Не ПустаяСтрока(ТекстОшибки)
// ОбщегоНазначения.СообщитьПользователю(ТекстОшибки);
// КонецЕсли;
//
// КартинкаQRКода = Новый Картинка(ДанныеQRКода);
// ОбластьМакета.Рисунки.QRКод.Картинка = КартинкаQRКода;
//
Функция ДанныеQRКода(QRСтрока, УровеньКоррекции, Размер) Экспорт
ПараметрыШтрихкода = ПараметрыГенерацииШтрихкода();
ПараметрыШтрихкода.Ширина = Размер;
ПараметрыШтрихкода.Высота = Размер;
ПараметрыШтрихкода.Штрихкод = QRСтрока;
ПараметрыШтрихкода.УровеньКоррекцииQR = УровеньКоррекции;
ПараметрыШтрихкода.ТипКода = 16; // QR
ПараметрыШтрихкода.УбратьЛишнийФон = Истина;
Попытка
РезультатФормированияШтрихкода = ИзображениеШтрихкода(ПараметрыШтрихкода);
ДвоичныеДанныеКартинки = РезультатФормированияШтрихкода.ДвоичныеДанные;
Исключение
#Если НЕ МобильноеПриложениеСервер Тогда
МодульОбщегоНазначения = МодульОбщегоНазначения();
ЗаписьЖурналаРегистрации(НСтр("ru = 'Ошибка генерации штрихкода'",
МодульОбщегоНазначения.КодОсновногоЯзыка()),
УровеньЖурналаРегистрации.Ошибка,,,
ОбработкаОшибок.ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
#КонецЕсли
КонецПопытки;
Возврат ДвоичныеДанныеКартинки;
КонецФункции
#КонецОбласти
#Область СлужебныйПрограммныйИнтерфейс
// Выполняет подключение внешней компоненты.
//
// Возвращаемое значение:
// ОбъектВнешнейКомпоненты
// Неопределено - если компоненту не удалось загрузить.
//
Функция ПодключитьКомпонентуГенерацииИзображенияШтрихкода() Экспорт
ВнешняяКомпонента = Неопределено;
ИмяОбъекта = ОписаниеКомпоненты().ИмяОбъекта;
ПолноеИмяМакета = ОписаниеКомпоненты().ПолноеИмяМакета;
МодульОбщегоНазначения = МодульОбщегоНазначения();
Если МодульОбщегоНазначения.ПодсистемаСуществует("ПоддержкаОборудования") Тогда
// подключение компоненты через БПО
МодульВнешниеКомпонентыБПО = МодульОбщегоНазначения.ОбщийМодуль("ВнешниеКомпонентыБПО");
ВнешняяКомпонента = МодульВнешниеКомпонентыБПО.ПодключитьКомпоненту(ИмяОбъекта, ПолноеИмяМакета);
Иначе
// Подключение компоненты через БСП
// Вызов БСП
#Если НЕ МобильноеПриложениеСервер Тогда
УстановитьОтключениеБезопасногоРежима(Истина);
Если МодульОбщегоНазначения.ДоступноИспользованиеРазделенныхДанных() Тогда
Если МодульОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ВнешниеКомпоненты") Тогда
МодульВнешниеКомпонентыСервер = МодульОбщегоНазначения.ОбщийМодуль("ВнешниеКомпонентыСервер");
ПараметрыПодключения = МодульВнешниеКомпонентыСервер.ПараметрыПодключения();
РезультатПодключения = МодульВнешниеКомпонентыСервер.ПодключитьКомпоненту(ИмяОбъекта);
Если РезультатПодключения.Подключено Тогда
ВнешняяКомпонента = РезультатПодключения.ПодключаемыйМодуль;
КонецЕсли;
КонецЕсли;
КонецЕсли;
Если ВнешняяКомпонента = Неопределено Тогда
ВнешняяКомпонента = МодульОбщегоНазначения.ПодключитьКомпонентуИзМакета(ИмяОбъекта, ПолноеИмяМакета);
КонецЕсли;
#КонецЕсли
// Конец Вызов БСП
КонецЕсли;
Если ВнешняяКомпонента = Неопределено Тогда
Возврат Неопределено;
КонецЕсли;
// Установим основные параметры компоненты.
// Если в системе установлен шрифт Tahoma.
Если ВнешняяКомпонента.НайтиШрифт("Tahoma") Тогда
// Выбираем его как шрифт для формирования картинки.
ВнешняяКомпонента.Шрифт = "Tahoma";
Иначе
// Шрифт Tahoma в системе отсутствует.
// Обойдем все доступные компоненте шрифты.
Для Сч = 0 По ВнешняяКомпонента.КоличествоШрифтов -1 Цикл
// Получим очередной шрифт, доступный компоненте.
ТекущийШрифт = ВнешняяКомпонента.ШрифтПоИндексу(Сч);
// Если шрифт доступен
Если ТекущийШрифт <> Неопределено Тогда
// Они и будет шрифтом для формирования штрихкода.
ВнешняяКомпонента.Шрифт = ТекущийШрифт;
Прервать;
КонецЕсли;
КонецЦикла;
КонецЕсли;
// Установим размер шрифта
ВнешняяКомпонента.РазмерШрифта = 12;
Возврат ВнешняяКомпонента;
КонецФункции
// Описание подключения внешней компоненты печати штрихкодов.
//
// Возвращаемое значение:
// Структура:
// * ПолноеИмяМакета - Строка
// * ИмяОбъекта - Строка
//
Функция ОписаниеКомпоненты() Экспорт
Параметры = Новый Структура;
Параметры.Вставить("ИмяОбъекта", "Barcode");
Параметры.Вставить("ПолноеИмяМакета", "ОбщийМакет.КомпонентаПечатиШтрихкодов");
Возврат Параметры;
КонецФункции
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
// Подготовить изображения штрихкода.
//
// Параметры:
// ВнешняяКомпонента - см. ГенерацияШтрихкодаСерверПовтИсп.ПодключитьКомпонентуГенерацииИзображенияШтрихкода
// ПараметрыШтрихкода - см. ГенерацияШтрихкода.ПараметрыГенерацииШтрихкода
//
// Возвращаемое значение:
// Структура:
// Результат - Булево - результат генерации штрихкода.
// ДвоичныеДанные - ДвоичныеДанные - двоичные данные изображения штрихкода.
// Картинка - Картинка - картинка с сформированным штрихкодом или НЕОПРЕДЕЛЕНО.
//
Функция ПодготовитьИзображениеШтрихкода(ВнешняяКомпонента, ПараметрыШтрихкода)
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.УстановитьСтроку("UTF-8");
ЗаписьXML.ЗаписатьОбъявлениеXML();
ЗаписьXML.ЗаписатьНачалоЭлемента("MakeBarcode");
ЗаписьXML.ЗаписатьНачалоЭлемента("Parameters");
// Шрифт установленный по умолчанию.
ЗаписьXML.ЗаписатьНачалоЭлемента("Font");
ЗаписьXML.ЗаписатьТекст(ВнешняяКомпонента.Шрифт);
ЗаписьXML.ЗаписатьКонецЭлемента();
// Ширина генерируемого изображения в пикселах
ШиринаШтрихкода = ?(ПараметрыШтрихкода.Ширина <= 0, 1, Окр(ПараметрыШтрихкода.Ширина));
ЗаписьXML.ЗаписатьНачалоЭлемента("Width");
ЗаписьXML.ЗаписатьТекст(Строка(ШиринаШтрихкода));
ЗаписьXML.ЗаписатьКонецЭлемента();
// Высота генерируемого изображения в пикселах.
ВысотаШтрихкода = ?(ПараметрыШтрихкода.Высота <= 0, 1, Окр(ПараметрыШтрихкода.Высота));
ЗаписьXML.ЗаписатьНачалоЭлемента("Height");
ЗаписьXML.ЗаписатьТекст(Строка(ВысотаШтрихкода));
ЗаписьXML.ЗаписатьКонецЭлемента();
// Признак использования прозрачного фона.
ЗаписьXML.ЗаписатьНачалоЭлемента("BgTransparent");
ЗаписьXML.ЗаписатьТекст(XMLСтрока(ПараметрыШтрихкода.ПрозрачныйФон));
ЗаписьXML.ЗаписатьКонецЭлемента();
// Указывает генератору, что требуется убрать лишний фон по краям ШК.
ЗаписьXML.ЗаписатьНачалоЭлемента("RemoveExeedBackgroud");
ЗаписьXML.ЗаписатьТекст(XMLСтрока(ПараметрыШтрихкода.УбратьЛишнийФон));
ЗаписьXML.ЗаписатьКонецЭлемента();
// Угол поворота (в градусах) штрихкода на сгенерированном изображении.
УголПоворота = Число(?(ПараметрыШтрихкода.Свойство("УголПоворота"), ПараметрыШтрихкода.УголПоворота, 0));
ЗаписьXML.ЗаписатьНачалоЭлемента("CanvasRotation");
ЗаписьXML.ЗаписатьТекст(XMLСтрока(УголПоворота));
ЗаписьXML.ЗаписатьКонецЭлемента();
// Значение уровня коррекции QR-кода: 0 - L, 1 - M, 2 - Q, 3 - H
УровеньКоррекцииQR = Число(?(ПараметрыШтрихкода.Свойство("УровеньКоррекцииQR"), ПараметрыШтрихкода.УровеньКоррекцииQR, 1));
ЗаписьXML.ЗаписатьНачалоЭлемента("QRErrorCorrectionLevel");
ЗаписьXML.ЗаписатьТекст(XMLСтрока(УровеньКоррекцииQR));
ЗаписьXML.ЗаписатьКонецЭлемента();
// Необходимость отображать подпись штрихкода на сгенерированном изображении.
ЗаписьXML.ЗаписатьНачалоЭлемента("TextVisible");
ЗаписьXML.ЗаписатьТекст(XMLСтрока(ПараметрыШтрихкода.ОтображатьТекст));
ЗаписьXML.ЗаписатьКонецЭлемента();
// Размер шрифта в пикселах
ЗаписьXML.ЗаписатьНачалоЭлемента("FontSize");
ЗаписьXML.ЗаписатьТекст(XMLСтрока(Число(ПараметрыШтрихкода.РазмерШрифта)));
ЗаписьXML.ЗаписатьКонецЭлемента();
// Вертикального выравнивания штрихкода на сгенерированном изображении: 1 - по верхнему краю, 2 - по центру, 3 - по нижнему краю.
ЗаписьXML.ЗаписатьНачалоЭлемента("CodeVerticalAlign");
ЗаписьXML.ЗаписатьТекст(XMLСтрока(Число(ПараметрыШтрихкода.ВертикальноеВыравнивание)));
ЗаписьXML.ЗаписатьКонецЭлемента();
// Количество строк штрихкода GS1 Databar extended stacked
ЗаписьXML.ЗаписатьНачалоЭлемента("GS1DatabarRowCount");
ЗаписьXML.ЗаписатьТекст(XMLСтрока(Число(ПараметрыШтрихкода.GS1DatabarКоличествоСтрок)));
ЗаписьXML.ЗаписатьКонецЭлемента();
// Цвета пикселей ШК будут изменены на обратные.
Если ПараметрыШтрихкода.Свойство("Инвертирован") Тогда
ЗаписьXML.ЗаписатьНачалоЭлемента("Inverted");
ЗаписьXML.ЗаписатьТекст(XMLСтрока(ПараметрыШтрихкода.Инвертирован));
ЗаписьXML.ЗаписатьКонецЭлемента();
КонецЕсли;
// Тип штрихкода - QR
Если ПараметрыШтрихкода.ТипКода = 16 Тогда
Если ЗначениеЗаполнено(ПараметрыШтрихкода.ЛоготипКартинка) Тогда
ЗаписьXML.ЗаписатьНачалоЭлемента("LogoImageBase64");
ЗаписьXML.ЗаписатьТекст(XMLСтрока(ПараметрыШтрихкода.ЛоготипКартинка));
ЗаписьXML.ЗаписатьКонецЭлемента();
КонецЕсли;
Если Не ПустаяСтрока(ПараметрыШтрихкода.ЛоготипРазмерПроцентОтШК) Тогда
ЗаписьXML.ЗаписатьНачалоЭлемента("LogoSizePercentFromBarcode");
ЗаписьXML.ЗаписатьТекст(XMLСтрока(Число(ПараметрыШтрихкода.ЛоготипРазмерПроцентОтШК)));
ЗаписьXML.ЗаписатьКонецЭлемента();
КонецЕсли;
КонецЕсли;
// Определение типа штрихкода.
ШтрихкодАвтоТип = (ПараметрыШтрихкода.ТипКода = 99);
ЗаписьXML.ЗаписатьНачалоЭлемента("CodeAuto");
ЗаписьXML.ЗаписатьТекст(XMLСтрока(ШтрихкодАвтоТип));
ЗаписьXML.ЗаписатьКонецЭлемента();
Если НЕ ШтрихкодАвтоТип Тогда
ЗаписьXML.ЗаписатьНачалоЭлемента("CodeType");
ЗаписьXML.ЗаписатьТекст(XMLСтрока(Число(ПараметрыШтрихкода.ТипКода)));
ЗаписьXML.ЗаписатьКонецЭлемента();
КонецЕсли;
// ECL
ЗаписьXML.ЗаписатьНачалоЭлемента("ECL");
ЗаписьXML.ЗаписатьТекст("1");
ЗаписьXML.ЗаписатьКонецЭлемента();
// Тип данных штрихкода
ЗаписьXML.ЗаписатьНачалоЭлемента("InputDataType");
ЗаписьXML.ЗаписатьТекст(XMLСтрока(Число(ПараметрыШтрихкода.ТипВходныхДанных)));
ЗаписьXML.ЗаписатьКонецЭлемента();
// Значение штрихкода
ЗаписьXML.ЗаписатьНачалоЭлемента("CodeValue");
ЗаписьXML.ЗаписатьТекст(XMLСтрока(Строка(ПараметрыШтрихкода.Штрихкод)));
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.ЗаписатьКонецЭлемента();
ПараметрыГенерацииXML = ЗаписьXML.Закрыть();
РезультатXML = "";
ВнешняяКомпонента.СгенерироватьШтрихкод(ПараметрыГенерацииXML, РезультатXML);
// Результат
РезультатОперации = Новый Структура();
РезультатОперации.Вставить("Результат", Ложь);
РезультатОперации.Вставить("ДвоичныеДанные");
РезультатОперации.Вставить("Картинка");
Если Не ПустаяСтрока(РезультатXML) Тогда
ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.УстановитьСтроку(РезультатXML);
ЧтениеXML.ПерейтиКСодержимому();
АтрибутыПараметра = Неопределено;
Если ЧтениеXML.Имя = "MakeBarcodeResult" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
Пока ЧтениеXML.Прочитать() Цикл
Если ЧтениеXML.Имя = "Result" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента И ЧтениеXML.Прочитать() Тогда
РезультатОперации.Результат = Число(ЧтениеXML.Значение) = 0;
ИначеЕсли ЧтениеXML.Имя = "ImageBase64" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента И ЧтениеXML.Прочитать() Тогда
КартинкаBase64 = ЧтениеXML.Значение;
ДвоичныеДанныеКартинки = Base64Значение(КартинкаBase64);
// Если картинка сформировалась.
Если ДвоичныеДанныеКартинки <> Неопределено Тогда
РезультатОперации.ДвоичныеДанные = ДвоичныеДанныеКартинки;
РезультатОперации.Картинка = Новый Картинка(ДвоичныеДанныеКартинки); // Формируем из двоичных данных.
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецЕсли;
Возврат РезультатОперации;
КонецФункции
// Подготовить изображения штрихкода.
//
// Параметры:
// ВнешняяКомпонента - см. ГенерацияШтрихкодаСерверПовтИсп.ПодключитьКомпонентуГенерацииИзображенияШтрихкода
// ПараметрыШтрихкода - см. ГенерацияШтрихкода.ПараметрыГенерацииШтрихкода
//
// Возвращаемое значение:
// Структура:
// Результат - Булево - результат генерации штрихкода.
// ДвоичныеДанные - ДвоичныеДанные - двоичные данные изображения штрихкода.
// Картинка - Картинка - картинка с сформированным штрихкодом или НЕОПРЕДЕЛЕНО.
//
Функция ПодготовитьИзображениеШтрихкодаСвойства(ВнешняяКомпонента, ПараметрыШтрихкода)
// Результат
РезультатОперации = Новый Структура();
РезультатОперации.Вставить("Результат", Ложь);
РезультатОперации.Вставить("ДвоичныеДанные");
РезультатОперации.Вставить("Картинка");
// Зададим размер формируемой картинки.
ШиринаШтрихкода = Окр(ПараметрыШтрихкода.Ширина);
ВысотаШтрихкода = Окр(ПараметрыШтрихкода.Высота);
Если ШиринаШтрихкода <= 0 Тогда
ШиринаШтрихкода = 1
КонецЕсли;
Если ВысотаШтрихкода <= 0 Тогда
ВысотаШтрихкода = 1
КонецЕсли;
ВнешняяКомпонента.Ширина = ШиринаШтрихкода;
ВнешняяКомпонента.Высота = ВысотаШтрихкода;
ВнешняяКомпонента.АвтоТип = Ложь;
ШтрихкодВрем = Строка(ПараметрыШтрихкода.Штрихкод); // Преобразуем явно в строку.
Если ПараметрыШтрихкода.ТипКода = 99 Тогда
ВнешняяКомпонента.АвтоТип = Истина;
Иначе
ВнешняяКомпонента.АвтоТип = Ложь;
ВнешняяКомпонента.ТипКода = ПараметрыШтрихкода.ТипКода;
КонецЕсли;
Если ПараметрыШтрихкода.Свойство("ПрозрачныйФон") Тогда
ВнешняяКомпонента.ПрозрачныйФон = ПараметрыШтрихкода.ПрозрачныйФон;
КонецЕсли;
Если ПараметрыШтрихкода.Свойство("ТипВходныхДанных") Тогда
ВнешняяКомпонента.ТипВходныхДанных = ПараметрыШтрихкода.ТипВходныхДанных;
КонецЕсли;
Если ПараметрыШтрихкода.Свойство("GS1DatabarКоличествоСтрок") Тогда
ВнешняяКомпонента.GS1DatabarКоличествоСтрок = ПараметрыШтрихкода.GS1DatabarКоличествоСтрок;
КонецЕсли;
Если ПараметрыШтрихкода.Свойство("УбратьЛишнийФон") Тогда
ВнешняяКомпонента.УбратьЛишнийФон = ПараметрыШтрихкода.УбратьЛишнийФон;
КонецЕсли;
Если ПараметрыШтрихкода.Свойство("Инвертирован") Тогда
Попытка
ВнешняяКомпонента.Инвертирован = ПараметрыШтрихкода.Инвертирован;
Исключение
#Если НЕ МобильноеПриложениеСервер Тогда
МодульОбщегоНазначения = МодульОбщегоНазначения();
ЗаписьЖурналаРегистрации(НСтр("ru = 'Используется старая версия компоненты генерации штрихкода'",
МодульОбщегоНазначения.КодОсновногоЯзыка()),
УровеньЖурналаРегистрации.Ошибка,,,
ОбработкаОшибок.ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
#КонецЕсли
КонецПопытки
КонецЕсли;
ВнешняяКомпонента.ОтображатьТекст = ПараметрыШтрихкода.ОтображатьТекст;
// Формируем картинку штрихкода.
ВнешняяКомпонента.ЗначениеКода = ШтрихкодВрем;
// Угол поворота штрихкода.
ВнешняяКомпонента.УголПоворота = ?(ПараметрыШтрихкода.Свойство("УголПоворота"), ПараметрыШтрихкода.УголПоворота, 0);
// Уровень коррекции QR кода (L=0, M=1, Q=2, H=3).
ВнешняяКомпонента.УровеньКоррекцииQR = ?(ПараметрыШтрихкода.Свойство("УровеньКоррекцииQR"), ПараметрыШтрихкода.УровеньКоррекцииQR, 1);
// Для обеспечения совместимости с предыдущими версиями БПО.
Если Не ПараметрыШтрихкода.Свойство("Масштабировать")
Или (ПараметрыШтрихкода.Свойство("Масштабировать") И ПараметрыШтрихкода.Масштабировать) Тогда
Если Не ПараметрыШтрихкода.Свойство("СохранятьПропорции")
Или (ПараметрыШтрихкода.Свойство("СохранятьПропорции") И Не ПараметрыШтрихкода.СохранятьПропорции) Тогда
// Если установленная нами ширина меньше минимально допустимой для этого штрихкода.
Если ВнешняяКомпонента.Ширина < ВнешняяКомпонента.МинимальнаяШиринаКода Тогда
ВнешняяКомпонента.Ширина = ВнешняяКомпонента.МинимальнаяШиринаКода;
КонецЕсли;
// Если установленная нами высота меньше минимально допустимой для этого штрихкода.
Если ВнешняяКомпонента.Высота < ВнешняяКомпонента.МинимальнаяВысотаКода Тогда
ВнешняяКомпонента.Высота = ВнешняяКомпонента.МинимальнаяВысотаКода;
КонецЕсли;
ИначеЕсли ПараметрыШтрихкода.Свойство("СохранятьПропорции") И ПараметрыШтрихкода.СохранятьПропорции Тогда
Пока ВнешняяКомпонента.Ширина < ВнешняяКомпонента.МинимальнаяШиринаКода
Или ВнешняяКомпонента.Высота < ВнешняяКомпонента.МинимальнаяВысотаКода Цикл
// Если установленная нами ширина меньше минимально допустимой для этого штрихкода.
Если ВнешняяКомпонента.Ширина < ВнешняяКомпонента.МинимальнаяШиринаКода Тогда
ВнешняяКомпонента.Ширина = ВнешняяКомпонента.МинимальнаяШиринаКода;
ВнешняяКомпонента.Высота = Окр(ВнешняяКомпонента.МинимальнаяШиринаКода / ШиринаШтрихкода) * ВысотаШтрихкода;
КонецЕсли;
// Если установленная нами высота меньше минимально допустимой для этого штрихкода.
Если ВнешняяКомпонента.Высота < ВнешняяКомпонента.МинимальнаяВысотаКода Тогда
ВнешняяКомпонента.Высота = ВнешняяКомпонента.МинимальнаяВысотаКода;
ВнешняяКомпонента.Ширина = Окр(ВнешняяКомпонента.МинимальнаяВысотаКода / ВысотаШтрихкода) * ШиринаШтрихкода;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецЕсли;
// ВертикальноеВыравниваниеКода: 1 - по верхнему краю, 2 - по центру, 3 - по нижнему краю.
Если ПараметрыШтрихкода.Свойство("ВертикальноеВыравнивание") И (ПараметрыШтрихкода.ВертикальноеВыравнивание > 0) Тогда
ВнешняяКомпонента.ВертикальноеВыравниваниеКода = ПараметрыШтрихкода.ВертикальноеВыравнивание;
КонецЕсли;
Если ПараметрыШтрихкода.Свойство("РазмерШрифта") И (ПараметрыШтрихкода.РазмерШрифта > 0)
И (ПараметрыШтрихкода.ОтображатьТекст) И (ВнешняяКомпонента.РазмерШрифта <> ПараметрыШтрихкода.РазмерШрифта) Тогда
ВнешняяКомпонента.РазмерШрифта = ПараметрыШтрихкода.РазмерШрифта;
КонецЕсли;
Если ПараметрыШтрихкода.ТипКода = 16 Тогда // QR
Если ПараметрыШтрихкода.Свойство("ЛоготипКартинка") И ЗначениеЗаполнено(ПараметрыШтрихкода.ЛоготипКартинка) Тогда
ВнешняяКомпонента.ЛоготипКартинка = ПараметрыШтрихкода.ЛоготипКартинка;
Иначе
ВнешняяКомпонента.ЛоготипКартинка = "";
КонецЕсли;
Если ПараметрыШтрихкода.Свойство("ЛоготипРазмерПроцентОтШК") И Не ПустаяСтрока(ПараметрыШтрихкода.ЛоготипРазмерПроцентОтШК) Тогда
ВнешняяКомпонента.ЛоготипРазмерПроцентОтШК = ПараметрыШтрихкода.ЛоготипРазмерПроцентОтШК;
КонецЕсли;
КонецЕсли;
// Сформируем картинку
ДвоичныеДанныеКартинки = ВнешняяКомпонента.ПолучитьШтрихкод();
РезультатОперации.Результат = ВнешняяКомпонента.Результат = 0;
// Если картинка сформировалась.
Если ДвоичныеДанныеКартинки <> Неопределено Тогда
РезультатОперации.ДвоичныеДанные = ДвоичныеДанныеКартинки;
РезультатОперации.Картинка = Новый Картинка(ДвоичныеДанныеКартинки); // Формируем из двоичных данных.
КонецЕсли;
Возврат РезультатОперации;
КонецФункции
Функция МодульОбщегоНазначения()
#Если Не МобильноеПриложениеСервер Тогда
УстановитьБезопасныйРежим(Истина);
#КонецЕсли
Если Метаданные.Подсистемы.Найти("ПоддержкаОборудования") = Неопределено Тогда
// Вызов БСП
Возврат Вычислить("ОбщегоНазначения");
// Конец Вызов БСП
Иначе
Возврат Вычислить("ОбщегоНазначенияБПО");
КонецЕсли;
КонецФункции
#КонецОбласти

Some files were not shown because too many files have changed in this diff Show More