Импорт пакета разработки [Rx]
Showing
82 changed files
with
6640 additions
and
0 deletions
DirRX.Dci/DirRX.Dci.Server/ModuleHandlers.cs
0 → 100644
DirRX.Dci/DirRX.Dci.Server/ModuleJobs.cs
0 → 100644
DirRX.Dci/DirRX.Dci.Server/ModuleQueries.xml
0 → 100644
DirRX.Dci/DirRX.Dci.Shared/Module.mtd
0 → 100644
| 1 | { | ||
| 2 | "$type": "Sungero.Metadata.SolutionMetadata, Sungero.Metadata", | ||
| 3 | "NameGuid": "f380c872-469a-4014-9ce5-ffb840907fc6", | ||
| 4 | "Name": "Dci", | ||
| 5 | "AsyncHandlers": [], | ||
| 6 | "ClientAssemblyName": "DirRX.Dci.Client", | ||
| 7 | "ClientBaseAssemblyName": "DirRX.Dci.ClientBase", | ||
| 8 | "ClientBaseNamespace": "DirRX.Dci.ClientBase", | ||
| 9 | "ClientNamespace": "DirRX.Dci.Client", | ||
| 10 | "Code": "Dci", | ||
| 11 | "CompanyCode": "DirRX", | ||
| 12 | "Cover": { | ||
| 13 | "NameGuid": "b41ac586-e41b-4b5c-99a2-d09d81032728", | ||
| 14 | "Actions": [], | ||
| 15 | "Background": null, | ||
| 16 | "Footer": { | ||
| 17 | "NameGuid": "b9ace2f4-94cc-49a4-834f-c73df793fb4d", | ||
| 18 | "BackgroundPosition": "Stretch" | ||
| 19 | }, | ||
| 20 | "Groups": [], | ||
| 21 | "Header": { | ||
| 22 | "NameGuid": "6e9571a3-229f-4173-9651-503932893c1c", | ||
| 23 | "BackgroundPosition": "Stretch" | ||
| 24 | }, | ||
| 25 | "Tabs": [] | ||
| 26 | }, | ||
| 27 | "DesktopViews": [], | ||
| 28 | "IconResourcesKeys": [], | ||
| 29 | "Importance": "Medium", | ||
| 30 | "InterfaceAssemblyName": "Sungero.Domain.Interfaces", | ||
| 31 | "InterfaceNamespace": "DirRX.Dci", | ||
| 32 | "OrderedSpecialFolders": [], | ||
| 33 | "PublicStructures": [], | ||
| 34 | "ResourceInterfaceAssemblyName": "Sungero.Domain.Interfaces", | ||
| 35 | "ResourceInterfaceNamespace": "DirRX.Dci", | ||
| 36 | "ResourcesKeys": [], | ||
| 37 | "ServerAssemblyName": "DirRX.Dci.Server", | ||
| 38 | "ServerNamespace": "DirRX.Dci.Server", | ||
| 39 | "SharedAssemblyName": "DirRX.Dci.Shared", | ||
| 40 | "SharedNamespace": "DirRX.Dci.Shared", | ||
| 41 | "SpecialFolders": [], | ||
| 42 | "Version": "1.0.4427.0", | ||
| 43 | "Widgets": [], | ||
| 44 | "Versions": [ | ||
| 45 | { | ||
| 46 | "Type": "SolutionMetadata", | ||
| 47 | "Number": 8 | ||
| 48 | }, | ||
| 49 | { | ||
| 50 | "Type": "ModuleMetadata", | ||
| 51 | "Number": 8 | ||
| 52 | }, | ||
| 53 | { | ||
| 54 | "Type": "DomainApi", | ||
| 55 | "Number": 3 | ||
| 56 | } | ||
| 57 | ] | ||
| 58 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
DirRX.Dci/DirRX.Dci.Shared/Module.resx
0 → 100644
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
DirRX.Dci/DirRX.Dci.Shared/Module.ru.resx
0 → 100644
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
DirRX.Dci/DirRX.Dci.Shared/ModuleSystem.resx
0 → 100644
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | <data name="DisplayName" xml:space="preserve"> | ||
| 121 | <value>Dci</value> | ||
| 122 | </data> | ||
| 123 | <data name="CoverTitle" xml:space="preserve"> | ||
| 124 | <value>Dci</value> | ||
| 125 | </data> | ||
| 126 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | using DirRX.DciCore.DciProcessKind; | ||
| 7 | |||
| 8 | namespace DirRX.DciCore.Client | ||
| 9 | { | ||
| 10 | partial class DciProcessKindFunctions | ||
| 11 | { | ||
| 12 | |||
| 13 | } | ||
| 14 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | using DirRX.DciCore.DciProcessKind; | ||
| 7 | |||
| 8 | namespace DirRX.DciCore | ||
| 9 | { | ||
| 10 | partial class DciProcessKindClientHandlers | ||
| 11 | { | ||
| 12 | |||
| 13 | } | ||
| 14 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8" standalone="yes"?> | ||
| 2 | <settings> | ||
| 3 | <ViewName>Default</ViewName> | ||
| 4 | <Collection175cf31544274d6b81205bd7b57bd993 FormGuid="e3903018-e6ef-4336-a294-2ccdc8d0bf63"> | ||
| 5 | <XtraSerializer version="1.0" application="GridControl"> | ||
| 6 | <property name="#LayoutVersion" isnull="true" /> | ||
| 7 | <property name="$GridControl" iskey="true" value="GridControl"> | ||
| 8 | <property name="GroupSummary" iskey="true" value="0" /> | ||
| 9 | <property name="View" isnull="true" iskey="true"> | ||
| 10 | <property name="ShowTotalSummary">false</property> | ||
| 11 | <property name="AllowMoveColumnToDropArea">false</property> | ||
| 12 | <property name="AllowColumnMoving">true</property> | ||
| 13 | <property name="ColumnChooserState" isnull="true" iskey="true"> | ||
| 14 | <property name="Location">1011,-2</property> | ||
| 15 | <property name="Size">220,250</property> | ||
| 16 | </property> | ||
| 17 | <property name="AutoWidth">false</property> | ||
| 18 | <property name="AllowGrouping">false</property> | ||
| 19 | <property name="AllowSorting">true</property> | ||
| 20 | <property name="ShowGroupPanel">false</property> | ||
| 21 | <property name="LinesPerRowMode">None</property> | ||
| 22 | <property name="IsRowCellMenuEnabled">false</property> | ||
| 23 | </property> | ||
| 24 | <property name="GroupCount">0</property> | ||
| 25 | <property name="TotalSummary" iskey="true" value="0" /> | ||
| 26 | <property name="Columns" iskey="true" value="2"> | ||
| 27 | <property name="Item1" isnull="true" iskey="true"> | ||
| 28 | <property name="FieldName">Name</property> | ||
| 29 | <property name="Visible">true</property> | ||
| 30 | <property name="Name">DciProcessKind_Messages_Name</property> | ||
| 31 | <property name="VisibleIndex">0</property> | ||
| 32 | <property name="Width">337</property> | ||
| 33 | <property name="ActualWidth">28*</property> | ||
| 34 | </property> | ||
| 35 | <property name="Item2" isnull="true" iskey="true"> | ||
| 36 | <property name="FieldName">Note</property> | ||
| 37 | <property name="Visible">true</property> | ||
| 38 | <property name="Name">DciProcessKind_Messages_Note</property> | ||
| 39 | <property name="VisibleIndex">1</property> | ||
| 40 | <property name="ActualWidth">57*</property> | ||
| 41 | </property> | ||
| 42 | </property> | ||
| 43 | <property name="SortInfo" iskey="true" value="0" /> | ||
| 44 | <property name="GroupSummarySortInfo" iskey="true" value="0" /> | ||
| 45 | </property> | ||
| 46 | </XtraSerializer> | ||
| 47 | </Collection175cf31544274d6b81205bd7b57bd993> | ||
| 48 | </settings> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
DirRX.DciCore/DirRX.DciCore.ClientBase/DciProcessKind/Generated/DefaultCollectionView.xml
0 → 100644
| 1 | <?xml version="1.0" encoding="utf-8" standalone="yes"?> | ||
| 2 | <settings> | ||
| 3 | <ViewName>Default</ViewName> | ||
| 4 | <Collection FormGuid="cddd4c25-da1e-45d4-ab4b-0250a22ce940"> | ||
| 5 | <XtraSerializer version="1.0" application="GridControl"> | ||
| 6 | <property name="#LayoutVersion" isnull="true" /> | ||
| 7 | <property name="$GridControl" iskey="true" value="GridControl"> | ||
| 8 | <property name="GroupSummary" iskey="true" value="0" /> | ||
| 9 | <property name="View" isnull="true" iskey="true"> | ||
| 10 | <property name="ColumnChooserState" isnull="true" iskey="true"> | ||
| 11 | <property name="Location">840,-194</property> | ||
| 12 | <property name="Size">220,250</property> | ||
| 13 | </property> | ||
| 14 | <property name="AllowGrouping">true</property> | ||
| 15 | <property name="AllowSorting">true</property> | ||
| 16 | <property name="LinesPerRowMode">OneLineMode</property> | ||
| 17 | <property name="IsRowCellMenuEnabled">false</property> | ||
| 18 | </property> | ||
| 19 | <property name="TotalSummary" iskey="true" value="0" /> | ||
| 20 | <property name="GroupCount">0</property> | ||
| 21 | <property name="Columns" iskey="true" value="8"> | ||
| 22 | <property name="Item1" isnull="true" iskey="true"> | ||
| 23 | <property name="MinWidth">32</property> | ||
| 24 | <property name="FieldName">T</property> | ||
| 25 | <property name="FixedWidth">true</property> | ||
| 26 | <property name="Visible">true</property> | ||
| 27 | <property name="ExtendedVisibleIndex">0</property> | ||
| 28 | <property name="VisibleIndex">0</property> | ||
| 29 | <property name="Width">32</property> | ||
| 30 | <property name="ActualWidth">3*</property> | ||
| 31 | </property> | ||
| 32 | <property name="Item2" isnull="true" iskey="true"> | ||
| 33 | <property name="FieldName">Id</property> | ||
| 34 | <property name="Visible">false</property> | ||
| 35 | <property name="Name">DciProcessKind_Id</property> | ||
| 36 | <property name="ExtendedVisibleIndex">7</property> | ||
| 37 | <property name="VisibleIndex">5</property> | ||
| 38 | <property name="ActualWidth">6*</property> | ||
| 39 | </property> | ||
| 40 | <property name="Item3" isnull="true" iskey="true"> | ||
| 41 | <property name="FieldName">Status</property> | ||
| 42 | <property name="Visible">true</property> | ||
| 43 | <property name="Name">DciProcessKind_Status</property> | ||
| 44 | <property name="ExtendedVisibleIndex">6</property> | ||
| 45 | <property name="VisibleIndex">4</property> | ||
| 46 | <property name="ActualWidth">15*</property> | ||
| 47 | </property> | ||
| 48 | <property name="Item4" isnull="true" iskey="true"> | ||
| 49 | <property name="FieldName">Name</property> | ||
| 50 | <property name="Visible">true</property> | ||
| 51 | <property name="Name">DciProcessKind_Name</property> | ||
| 52 | <property name="ExtendedVisibleIndex">3</property> | ||
| 53 | <property name="VisibleIndex">1</property> | ||
| 54 | <property name="ActualWidth">17*</property> | ||
| 55 | </property> | ||
| 56 | <property name="Item5" isnull="true" iskey="true"> | ||
| 57 | <property name="FieldName">GUID</property> | ||
| 58 | <property name="Visible">false</property> | ||
| 59 | <property name="Name">DciProcessKind_GUID</property> | ||
| 60 | <property name="ExtendedVisibleIndex">1</property> | ||
| 61 | <property name="ActualWidth">NaN</property> | ||
| 62 | </property> | ||
| 63 | <property name="Item6" isnull="true" iskey="true"> | ||
| 64 | <property name="FieldName">ProcessType</property> | ||
| 65 | <property name="Visible">true</property> | ||
| 66 | <property name="Name">DciProcessKind_ProcessType</property> | ||
| 67 | <property name="ExtendedVisibleIndex">5</property> | ||
| 68 | <property name="VisibleIndex">3</property> | ||
| 69 | <property name="ActualWidth">14*</property> | ||
| 70 | </property> | ||
| 71 | <property name="Item7" isnull="true" iskey="true"> | ||
| 72 | <property name="FieldName">Description</property> | ||
| 73 | <property name="Visible">true</property> | ||
| 74 | <property name="Name">DciProcessKind_Description</property> | ||
| 75 | <property name="ExtendedVisibleIndex">4</property> | ||
| 76 | <property name="VisibleIndex">2</property> | ||
| 77 | <property name="ActualWidth">24*</property> | ||
| 78 | </property> | ||
| 79 | <property name="Item8" isnull="true" iskey="true"> | ||
| 80 | <property name="FieldName">Note</property> | ||
| 81 | <property name="Visible">false</property> | ||
| 82 | <property name="Name">DciProcessKind_Note</property> | ||
| 83 | <property name="ExtendedVisibleIndex">2</property> | ||
| 84 | <property name="ActualWidth">NaN</property> | ||
| 85 | </property> | ||
| 86 | </property> | ||
| 87 | <property name="SortInfo" iskey="true" value="0" /> | ||
| 88 | <property name="GroupSummarySortInfo" iskey="true" value="0" /> | ||
| 89 | </property> | ||
| 90 | </XtraSerializer> | ||
| 91 | </Collection> | ||
| 92 | </settings> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8" standalone="yes"?> | ||
| 2 | <settings> | ||
| 3 | <ViewName>Default</ViewName> | ||
| 4 | <Folder FormGuid="8dbb6507-6d7b-4ef2-9247-a64a15eb5dbb"> | ||
| 5 | <XtraSerializer version="1.0" application="GridControl"> | ||
| 6 | <property name="#LayoutVersion" isnull="true" /> | ||
| 7 | <property name="$GridControl" iskey="true" value="GridControl"> | ||
| 8 | <property name="Columns" iskey="true" value="3"> | ||
| 9 | <property name="Item1" isnull="true" iskey="true"> | ||
| 10 | <property name="FieldName">T</property> | ||
| 11 | <property name="Visible">true</property> | ||
| 12 | <property name="VisibleIndex">0</property> | ||
| 13 | </property> | ||
| 14 | <property name="Item2" isnull="true" iskey="true"> | ||
| 15 | <property name="FieldName">Id</property> | ||
| 16 | <property name="Visible">true</property> | ||
| 17 | <property name="Name">DciProcessKind_Id</property> | ||
| 18 | <property name="VisibleIndex">1</property> | ||
| 19 | </property> | ||
| 20 | <property name="Item3" isnull="true" iskey="true"> | ||
| 21 | <property name="FieldName">Name</property> | ||
| 22 | <property name="Visible">true</property> | ||
| 23 | <property name="Name">DciProcessKind_Name</property> | ||
| 24 | <property name="VisibleIndex">2</property> | ||
| 25 | </property> | ||
| 26 | </property> | ||
| 27 | </property> | ||
| 28 | </XtraSerializer> | ||
| 29 | </Folder> | ||
| 30 | </settings> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | using DirRX.DciCore.DciSetting; | ||
| 7 | |||
| 8 | namespace DirRX.DciCore.Client | ||
| 9 | { | ||
| 10 | partial class DciSettingFunctions | ||
| 11 | { | ||
| 12 | |||
| 13 | } | ||
| 14 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | using DirRX.DciCore.DciSetting; | ||
| 7 | |||
| 8 | namespace DirRX.DciCore | ||
| 9 | { | ||
| 10 | partial class DciSettingClientHandlers | ||
| 11 | { | ||
| 12 | |||
| 13 | } | ||
| 14 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8" standalone="yes"?> | ||
| 2 | <settings> | ||
| 3 | <ViewName>Default</ViewName> | ||
| 4 | <Collection FormGuid="cddd4c25-da1e-45d4-ab4b-0250a22ce940"> | ||
| 5 | <XtraSerializer version="1.0" application="GridControl"> | ||
| 6 | <property name="#LayoutVersion" isnull="true" /> | ||
| 7 | <property name="$GridControl" iskey="true" value="GridControl"> | ||
| 8 | <property name="Columns" iskey="true" value="3"> | ||
| 9 | <property name="Item1" isnull="true" iskey="true"> | ||
| 10 | <property name="FieldName">T</property> | ||
| 11 | <property name="Visible">true</property> | ||
| 12 | <property name="VisibleIndex">0</property> | ||
| 13 | </property> | ||
| 14 | <property name="Item2" isnull="true" iskey="true"> | ||
| 15 | <property name="FieldName">Id</property> | ||
| 16 | <property name="Visible">true</property> | ||
| 17 | <property name="Name">DciSetting_Id</property> | ||
| 18 | <property name="VisibleIndex">1</property> | ||
| 19 | </property> | ||
| 20 | <property name="Item3" isnull="true" iskey="true"> | ||
| 21 | <property name="FieldName">Name</property> | ||
| 22 | <property name="Visible">true</property> | ||
| 23 | <property name="Name">DciSetting_Name</property> | ||
| 24 | <property name="VisibleIndex">2</property> | ||
| 25 | </property> | ||
| 26 | </property> | ||
| 27 | </property> | ||
| 28 | </XtraSerializer> | ||
| 29 | </Collection> | ||
| 30 | </settings> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8" standalone="yes"?> | ||
| 2 | <settings> | ||
| 3 | <ViewName>Default</ViewName> | ||
| 4 | <Folder FormGuid="8dbb6507-6d7b-4ef2-9247-a64a15eb5dbb"> | ||
| 5 | <XtraSerializer version="1.0" application="GridControl"> | ||
| 6 | <property name="#LayoutVersion" isnull="true" /> | ||
| 7 | <property name="$GridControl" iskey="true" value="GridControl"> | ||
| 8 | <property name="Columns" iskey="true" value="3"> | ||
| 9 | <property name="Item1" isnull="true" iskey="true"> | ||
| 10 | <property name="FieldName">T</property> | ||
| 11 | <property name="Visible">true</property> | ||
| 12 | <property name="VisibleIndex">0</property> | ||
| 13 | </property> | ||
| 14 | <property name="Item2" isnull="true" iskey="true"> | ||
| 15 | <property name="FieldName">Id</property> | ||
| 16 | <property name="Visible">true</property> | ||
| 17 | <property name="Name">DciSetting_Id</property> | ||
| 18 | <property name="VisibleIndex">1</property> | ||
| 19 | </property> | ||
| 20 | <property name="Item3" isnull="true" iskey="true"> | ||
| 21 | <property name="FieldName">Name</property> | ||
| 22 | <property name="Visible">true</property> | ||
| 23 | <property name="Name">DciSetting_Name</property> | ||
| 24 | <property name="VisibleIndex">2</property> | ||
| 25 | </property> | ||
| 26 | </property> | ||
| 27 | </property> | ||
| 28 | </XtraSerializer> | ||
| 29 | </Folder> | ||
| 30 | </settings> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
982 Bytes
| 1 | <svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><title>GroupIconGroup2_large_5430a5b483b34623a8a172567176cf0c</title><path d="M30,13H26.95c-0.16-.45-1.11-2.16-1.32-2.58L27.3,8.75c0.76-.76,1-1.37.19-2.13L24.75,3.88c-0.76-.76-1.11-0.14-1.87.61L21.12,6.25c-0.31-.14-1.8-1.08-2.12-1.2V2c0-.5,0-1-1.06-1H14.06A0.88,0.88,0,0,0,13,2V5.05c-0.39.14-1.93,1.07-2.29,1.24l-2.21-2C7.75,3.57,8,3.37,6.83,3.92L4.09,6.66a1.39,1.39,0,0,0,.22,2.16l1.85,1.85C6,11,5.19,12.61,5.05,13H2a0.84,0.84,0,0,0-1,1v4c0,0.9,1.26,1,1,1H5c0.11,0.32.94,1.69,1.08,2l-2,2c-0.76.76-1.05,1.56-.3,2.32L6.5,28.08c0.76,0.76,1.18.48,1.94-.27l1.93-1.93c0.42,0.21,2.14,1,2.58,1.21L13,30c0.13,0.25-.07,1,1,1h4a1,1,0,0,0,1-1V27c0.39-.14,1.71-1.08,2.08-1.25l1.85,1.85a1.49,1.49,0,0,0,2.34.14L28,25c0.76-.76.23-0.94-0.53-1.69l-1.85-1.85c0.17-.37,1.19-2.07,1.32-2.46H30a0.92,0.92,0,0,0,1-1.06V14.06A0.92,0.92,0,0,0,30,13ZM16,20.88A4.59,4.59,0,0,1,11.13,16,4.82,4.82,0,0,1,16,11.13,5,5,0,0,1,20.88,16,4.78,4.78,0,0,1,16,20.88Z" fill="#fff"/><path d="M18,2V4.7a2,2,0,0,0,1.33,1.89c0.29,0.1.56,0.21,0.82,0.33a2,2,0,0,0,2.25-.4l1.82-1.82L27,7.51,25.32,9.24a2,2,0,0,0-.38,2.31,10,10,0,0,1,.48,1.12A2,2,0,0,0,27.3,14H30v4H27.3a2,2,0,0,0-1.89,1.33,10,10,0,0,1-.4,1,2,2,0,0,0,.39,2.28l1.91,1.91-2.83,2.83-1.91-1.91A2,2,0,0,0,20.3,25a9.94,9.94,0,0,1-1,.4A2,2,0,0,0,18,27.3V30H14V27.3a2,2,0,0,0-1.33-1.89,10,10,0,0,1-1.12-.48,2,2,0,0,0-2.31.38l-2,2L4.41,24.49l2.09-2.09a2,2,0,0,0,.4-2.25c-0.12-.25-0.23-0.53-0.33-0.82A2,2,0,0,0,4.7,18H2V14H4.7a2,2,0,0,0,1.89-1.33,10,10,0,0,1,.4-1,2,2,0,0,0-.39-2.28L4.69,7.51,7.51,4.69,9.42,6.59A2,2,0,0,0,11.7,7a10,10,0,0,1,1-.4A2,2,0,0,0,14,4.7V2h4M16,22a6,6,0,1,0-6-6,6,6,0,0,0,6,6M18,0H14a2,2,0,0,0-2,2V4.7a11.91,11.91,0,0,0-1.16.48L8.93,3.27a2,2,0,0,0-2.83,0L3.27,6.1a2,2,0,0,0,0,2.83l1.91,1.91A11.9,11.9,0,0,0,4.7,12H2a2,2,0,0,0-2,2v4a2,2,0,0,0,2,2H4.7c0.12,0.33.25,0.66,0.39,1L3,23.07A2,2,0,0,0,3,25.9l2.83,2.83a2,2,0,0,0,2.83,0l2-2A11.92,11.92,0,0,0,12,27.3V30a2,2,0,0,0,2,2h4a2,2,0,0,0,2-2V27.3a11.89,11.89,0,0,0,1.16-.48l1.91,1.91a2,2,0,0,0,2.83,0l2.83-2.83a2,2,0,0,0,0-2.83l-1.91-1.91A11.9,11.9,0,0,0,27.3,20H30a2,2,0,0,0,2-2V14a2,2,0,0,0-2-2H27.3a11.92,11.92,0,0,0-.57-1.35l1.72-1.72a2,2,0,0,0,0-2.83L25.63,3.27a2,2,0,0,0-2.83,0L21,5.09c-0.32-.15-0.65-0.28-1-0.39V2a2,2,0,0,0-2-2h0ZM16,20a4,4,0,1,1,4-4,4,4,0,0,1-4,4h0Z" fill="#6fa6d4"/></svg> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | |||
| 7 | namespace DirRX.DciCore.Client | ||
| 8 | { | ||
| 9 | public class ModuleFunctions | ||
| 10 | { | ||
| 11 | |||
| 12 | /// <summary> | ||
| 13 | /// Открыть настройки DCI. | ||
| 14 | /// </summary> | ||
| 15 | [Public] | ||
| 16 | public virtual void ShowDciSettings() | ||
| 17 | { | ||
| 18 | var setting = Functions.DciSetting.Remote.GetDciSettings(); | ||
| 19 | if (setting == null) | ||
| 20 | setting = Functions.DciSetting.Remote.CreateDciSetting(); | ||
| 21 | |||
| 22 | setting.Show(); | ||
| 23 | } | ||
| 24 | |||
| 25 | /// <summary> | ||
| 26 | /// Отправить тестовое сообщение для проверки связи. | ||
| 27 | /// </summary> | ||
| 28 | [Public] | ||
| 29 | public virtual void SendDciPingMessage() | ||
| 30 | { | ||
| 31 | var setting = Functions.DciSetting.Remote.GetDciSettings(); | ||
| 32 | if (setting == null) | ||
| 33 | { | ||
| 34 | Dialogs.ShowMessage(DirRX.DciCore.Resources.DciSettingsNotFound, MessageType.Warning); | ||
| 35 | return; | ||
| 36 | } | ||
| 37 | |||
| 38 | var processGuid = Functions.Module.Remote.SendDciPing(); | ||
| 39 | |||
| 40 | var hyperLink = PublicFunctions.Module.GetHyperlinkToDciProcess(setting, processGuid); | ||
| 41 | Dialogs.ShowMessage(DirRX.DciCore.Resources.SendPingTrackingMessageFormat(hyperLink)); | ||
| 42 | } | ||
| 43 | |||
| 44 | } | ||
| 45 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
No preview for this file type
No preview for this file type
No preview for this file type
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | using DirRX.DciCore.DciProcessKind; | ||
| 7 | |||
| 8 | namespace DirRX.DciCore | ||
| 9 | { | ||
| 10 | partial class DciProcessKindServerHandlers | ||
| 11 | { | ||
| 12 | |||
| 13 | public override void BeforeSave(Sungero.Domain.BeforeSaveEventArgs e) | ||
| 14 | { | ||
| 15 | var validationText = string.Empty; | ||
| 16 | // Проверить корректность имени процесса. | ||
| 17 | validationText = Functions.Module.ValidateDciName(_obj.Name); | ||
| 18 | if (!string.IsNullOrWhiteSpace(validationText)) | ||
| 19 | e.AddError(DirRX.DciCore.DciProcessKinds.Resources.IncorrectProcessNameFormat(validationText)); | ||
| 20 | |||
| 21 | // Проверить корректность имени сообщений. | ||
| 22 | foreach (var row in _obj.Messages) | ||
| 23 | { | ||
| 24 | validationText = Functions.Module.ValidateDciName(row.Name); | ||
| 25 | if (!string.IsNullOrWhiteSpace(validationText)) | ||
| 26 | e.AddError(DirRX.DciCore.DciProcessKinds.Resources.IncorrectMessageNameFormat(validationText)); | ||
| 27 | } | ||
| 28 | |||
| 29 | // Проверить дубли среди имен сообщений в разрезе сообщения. | ||
| 30 | var doubleName = _obj.Messages.GroupBy(x => x.Name) | ||
| 31 | .Where(g => g.Count() > 1) | ||
| 32 | .Select(y => y.Key) | ||
| 33 | .FirstOrDefault(); | ||
| 34 | if (!string.IsNullOrWhiteSpace(doubleName)) | ||
| 35 | e.AddError(DirRX.DciCore.DciProcessKinds.Resources.NotUniqueMessageNameFormat(doubleName, _obj.Name)); | ||
| 36 | } | ||
| 37 | } | ||
| 38 | |||
| 39 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | using DirRX.DciCore.DciProcessKind; | ||
| 7 | |||
| 8 | namespace DirRX.DciCore.Server | ||
| 9 | { | ||
| 10 | partial class DciProcessKindFunctions | ||
| 11 | { | ||
| 12 | |||
| 13 | /// <summary> | ||
| 14 | /// Получить запись справочника по имени процесса. | ||
| 15 | /// </summary> | ||
| 16 | /// <param name="processName">Имя процесса DCI.</param> | ||
| 17 | /// <returns>Запись справочника "Вид межсистемного процесса".</returns> | ||
| 18 | [Public, Remote(IsPure = true)] | ||
| 19 | public static IDciProcessKind GetProcessKindByName(string processName) | ||
| 20 | { | ||
| 21 | var result = DciProcessKinds.GetAll().Where(x => x.Status == Status.Active | ||
| 22 | && x.Name == processName) | ||
| 23 | .FirstOrDefault(); | ||
| 24 | return result; | ||
| 25 | } | ||
| 26 | |||
| 27 | /// <summary> | ||
| 28 | /// Проверить существование записи справочника по имени процесса и имени сообщения. | ||
| 29 | /// </summary> | ||
| 30 | /// <param name="processName">Имя процесса DCI.</param> | ||
| 31 | /// <param name="messageName">Имя сообщения DCI.</param> | ||
| 32 | /// <returns>Пустая строка или текст ошибки.</returns> | ||
| 33 | [Public, Remote(IsPure = true)] | ||
| 34 | public static string CheckProcessKindExists(string processName, string messageName) | ||
| 35 | { | ||
| 36 | var process = GetProcessKindByName(processName); | ||
| 37 | if (process == null) | ||
| 38 | return DirRX.DciCore.DciProcessKinds.Resources.NotFoundProcessKindByProcessNameFormat(processName); | ||
| 39 | |||
| 40 | var messageRow = process.Messages.Where(x => x.Name == messageName).FirstOrDefault(); | ||
| 41 | if (messageRow == null) | ||
| 42 | return DirRX.DciCore.DciProcessKinds.Resources.NotFoundMessageInProcessKindFormat(processName, messageName); | ||
| 43 | |||
| 44 | return string.Empty; | ||
| 45 | } | ||
| 46 | |||
| 47 | } | ||
| 48 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | using DirRX.DciCore.DciSetting; | ||
| 7 | |||
| 8 | namespace DirRX.DciCore.Server | ||
| 9 | { | ||
| 10 | partial class DciSettingFunctions | ||
| 11 | { | ||
| 12 | |||
| 13 | /// <summary> | ||
| 14 | /// Создать запись справочника "Настройки DCI". | ||
| 15 | /// </summary> | ||
| 16 | /// <returns>Запись справочника "Настройки DCI".</returns> | ||
| 17 | [Public, Remote] | ||
| 18 | public static IDciSetting CreateDciSetting() | ||
| 19 | { | ||
| 20 | return DciSettings.Create(); | ||
| 21 | } | ||
| 22 | |||
| 23 | /// <summary> | ||
| 24 | /// Получить запись справочника "Настройки DCI". | ||
| 25 | /// </summary> | ||
| 26 | /// <returns>Запись справочника "Настройки DCI".</returns> | ||
| 27 | [Public, Remote(IsPure = true)] | ||
| 28 | public static IDciSetting GetDciSettings() | ||
| 29 | { | ||
| 30 | return DciSettings.GetAll().FirstOrDefault(); | ||
| 31 | } | ||
| 32 | |||
| 33 | } | ||
| 34 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | using Directum.Dci.Sdk; | ||
| 7 | using Directum.Dci.Common; | ||
| 8 | using Directum.Dci.Entities; | ||
| 9 | |||
| 10 | namespace DirRX.DciCore.Server | ||
| 11 | { | ||
| 12 | public class ModuleAsyncHandlers | ||
| 13 | { | ||
| 14 | |||
| 15 | /// <summary> | ||
| 16 | /// Отправка сообщений в DCI с изменениями с момента последней синхронизации (в разрезе типа сущности). | ||
| 17 | /// Запуск АО инициирует ФП. | ||
| 18 | /// </summary> | ||
| 19 | /// <param name="args">Параметры вызова асинхронного обработчика.</param> | ||
| 20 | public virtual void SendProcessMessage(DirRX.DciCore.Server.AsyncHandlerInvokeArgs.SendProcessMessageInvokeArgs args) | ||
| 21 | { | ||
| 22 | var handlerName = "SendProcessMessage"; // Имя АО, для логов. | ||
| 23 | var idProcessKind = args.IdProcessKind; | ||
| 24 | var processName = args.NameProcessKind; | ||
| 25 | var startSyncDate = Calendar.Now; | ||
| 26 | Logger.Debug(string.Format("{0}. {1} (ИД={2}). Начало отправки изменений во внешнюю систему.", handlerName, processName, idProcessKind)); | ||
| 27 | |||
| 28 | var errors = new List<string>(); | ||
| 29 | |||
| 30 | try | ||
| 31 | { | ||
| 32 | var processKind = DciProcessKinds.Get(idProcessKind); | ||
| 33 | var entityTypeGuid = processKind.EntityTypeGUID; | ||
| 34 | var lastSyncDate = processKind.LastOutSyncDate.Value; | ||
| 35 | processName = processKind.Name; | ||
| 36 | |||
| 37 | var setting = Functions.DciSetting.GetDciSettings(); | ||
| 38 | if (setting == null) | ||
| 39 | throw AppliedCodeException.Create(DirRX.DciCore.Resources.DciSettingsNotFound); | ||
| 40 | var processFactory = Functions.Module.GetProcessFactory(setting); | ||
| 41 | |||
| 42 | // TODO нужна адаптация кода под поиск изменения документов и сквозных процессов. | ||
| 43 | var changedDatabookRecordIds = Functions.Module.GetChangedDatabookRecords(entityTypeGuid, lastSyncDate, startSyncDate); | ||
| 44 | |||
| 45 | Logger.Debug(string.Format("{0}. {1} (ИД={2}). Изменений найдено: {3}", handlerName, processName, idProcessKind, changedDatabookRecordIds.Count())); | ||
| 46 | |||
| 47 | foreach (var entityId in changedDatabookRecordIds) | ||
| 48 | { | ||
| 49 | try | ||
| 50 | { | ||
| 51 | Logger.Debug(string.Format("{0}. {1} (ИД={2}). Обработка записи с ИД {3}.", handlerName, processName, idProcessKind, entityId)); | ||
| 52 | var entity = Functions.Module.GetDatabookEntityById(entityId, entityTypeGuid); | ||
| 53 | var messageName = Functions.Module.GetDCIMessageNameByEntity(entity); | ||
| 54 | |||
| 55 | // TODO вынести проверку из цикла | ||
| 56 | // Выполнить проверку существования настройки для процесса и сообщения. | ||
| 57 | var checkResult = Functions.DciProcessKind.CheckProcessKindExists(processName, messageName); | ||
| 58 | if (!string.IsNullOrWhiteSpace(checkResult)) | ||
| 59 | throw AppliedCodeException.Create(checkResult); | ||
| 60 | |||
| 61 | var dciMessage = Functions.Module.CreateMessage(processName, messageName, string.Empty, entityId, entityTypeGuid, processFactory, setting, true); | ||
| 62 | // TODO Есть небольшое дублирование вычисления, глобальный ИД уже хранится в process.Params "RecordGUID", но что быстрее - получить из extLinks или из параметров? | ||
| 63 | var externalSystemID = dciMessage.Receiver; | ||
| 64 | var entityLink = Functions.Module.GetExternalEntityLink(entityId, entityTypeGuid, externalSystemID); | ||
| 65 | var globalEntityId = entityLink.ExtEntityId.ToString(); | ||
| 66 | // TODO не создавать ссылку если ее еще нет и происходит удаление записи? | ||
| 67 | // if (messageName = Constants.DciProcessKind.DefaultDciMessageName.RecordDeletion && entityLink.IsDeleted != true) | ||
| 68 | // { | ||
| 69 | // entityLink.IsDeleted = true; | ||
| 70 | // entityLink.Save(); | ||
| 71 | // } | ||
| 72 | |||
| 73 | dciMessage = Functions.Module.PrepareDCIMessageAttach(dciMessage, entity, globalEntityId); | ||
| 74 | |||
| 75 | // TODO Извлечь из вложения ведущее сообщение. Добавить зависимость от ведущего. | ||
| 76 | |||
| 77 | //Отправка сообщения DCI. | ||
| 78 | try | ||
| 79 | { | ||
| 80 | dciMessage.Send(); | ||
| 81 | } | ||
| 82 | catch (Exception ex) | ||
| 83 | { | ||
| 84 | errors.Add(string.Format("Ошибка при отправке сообщения DCI. {0}\n{1}", ex.Message, ex.StackTrace)); | ||
| 85 | } | ||
| 86 | } | ||
| 87 | catch (Exception ex) | ||
| 88 | { | ||
| 89 | errors.Add(string.Format("{0}\n{1}", ex.Message, ex.StackTrace)); | ||
| 90 | } | ||
| 91 | } | ||
| 92 | |||
| 93 | if (!errors.Any()) | ||
| 94 | { | ||
| 95 | processKind.LastOutSyncDate = startSyncDate; | ||
| 96 | processKind.Save(); | ||
| 97 | } | ||
| 98 | |||
| 99 | } | ||
| 100 | catch (Exception ex) | ||
| 101 | { | ||
| 102 | errors.Add(string.Format("{0}\n{1}", ex.Message, ex.StackTrace)); | ||
| 103 | } | ||
| 104 | |||
| 105 | if (errors.Any()) | ||
| 106 | { | ||
| 107 | try | ||
| 108 | { | ||
| 109 | Logger.Error(string.Format("{0}. {1} (ИД={2}). При отправке изменений во внешнюю систему произошли ошибки: {3}", handlerName, processName, idProcessKind, string.Join(Environment.NewLine, errors))); | ||
| 110 | // TODO возможен спам задачами. | ||
| 111 | // TODO сделать новую функцию SendNotificatiobAboutSendErrors на основе SendNotificatiobAboutReceiveErrors | ||
| 112 | // Functions.Module.SendNotificatiobAboutReceiveErrors(errors, processName, processGUID, messageName, messageGUID); | ||
| 113 | } | ||
| 114 | catch (Exception ex) | ||
| 115 | { | ||
| 116 | Logger.Error(string.Format("{0}. Ошибка при отправке уведомления об ошибках.", handlerName), ex); | ||
| 117 | } | ||
| 118 | } | ||
| 119 | |||
| 120 | Logger.Debug(string.Format("{0}. {1} (ИД={2}). Конец отправки изменений во внешнюю систему.", handlerName, processName, idProcessKind)); | ||
| 121 | } | ||
| 122 | |||
| 123 | /// <summary> | ||
| 124 | /// Прием сообщения из DCI. | ||
| 125 | /// Запуск АО инициирует плагин DCI. | ||
| 126 | /// </summary> | ||
| 127 | /// <param name="args">Параметры вызова асинхронного обработчика.</param> | ||
| 128 | public virtual void ReceiveProcessMessage(DirRX.DciCore.Server.AsyncHandlerInvokeArgs.ReceiveProcessMessageInvokeArgs args) | ||
| 129 | { | ||
| 130 | var handlerName = "ReceiveProcessMessage"; // Имя АО, для логов. | ||
| 131 | var messageGUID = args.MessageGUID; | ||
| 132 | var messageName = string.Empty; | ||
| 133 | var processGUID = string.Empty; | ||
| 134 | var processName = string.Empty; | ||
| 135 | var messageFolderPath = string.Empty; | ||
| 136 | Logger.Debug(string.Format("{0}. {1}. Начало обработки сообщения.", handlerName, messageGUID)); | ||
| 137 | |||
| 138 | var errors = new List<string>(); | ||
| 139 | |||
| 140 | try | ||
| 141 | { | ||
| 142 | var setting = Functions.DciSetting.GetDciSettings(); | ||
| 143 | if (setting == null) | ||
| 144 | throw AppliedCodeException.Create(DirRX.DciCore.Resources.DciSettingsNotFound); | ||
| 145 | var processFactory = Functions.Module.GetProcessFactory(setting); | ||
| 146 | var message = processFactory.GetProcessMessageByGlobalId(messageGUID); | ||
| 147 | if (message == null) | ||
| 148 | throw AppliedCodeException.Create(DirRX.DciCore.Resources.NotFoundMessageByGlobalIdFormat(messageGUID)); | ||
| 149 | var process = processFactory.GetProcessByMessage(message); | ||
| 150 | if (process == null) | ||
| 151 | throw AppliedCodeException.Create(DirRX.DciCore.Resources.NotFoundProcessByMessageFormat(messageGUID)); | ||
| 152 | |||
| 153 | messageName = message.Name; | ||
| 154 | processGUID = process.GlobalId; | ||
| 155 | processName = process.ProcessKindName; | ||
| 156 | messageFolderPath = message.FolderName; | ||
| 157 | |||
| 158 | var messageError = string.Empty; | ||
| 159 | try | ||
| 160 | { | ||
| 161 | // Выполнить проверку существования настройки для процесса и сообщения. | ||
| 162 | var checkResult = Functions.DciProcessKind.CheckProcessKindExists(processName, messageName); | ||
| 163 | if (!string.IsNullOrWhiteSpace(checkResult)) | ||
| 164 | throw AppliedCodeException.Create(checkResult); | ||
| 165 | |||
| 166 | Logger.Debug(string.Format("{0}. Процесс: {1} ({2}). Сообщение: {3} ({4}). Подбор обработчика для сообщения.", | ||
| 167 | handlerName, processGUID, processName, messageGUID, messageName)); | ||
| 168 | |||
| 169 | // Найти и выполнить обработчик для сообщения. | ||
| 170 | messageError = Functions.Module.ProcessDCIMessage(message); | ||
| 171 | } | ||
| 172 | catch (Exception ex) | ||
| 173 | { | ||
| 174 | messageError = DirRX.DciCore.Resources.ReceiveHandlerErrorFormat(ex.Message, ex.StackTrace); | ||
| 175 | } | ||
| 176 | |||
| 177 | var stopProcess = false; | ||
| 178 | if (string.IsNullOrEmpty(messageError)) | ||
| 179 | { | ||
| 180 | message.MarkAsReceived(); | ||
| 181 | stopProcess = true; | ||
| 182 | } | ||
| 183 | else | ||
| 184 | { | ||
| 185 | // При блокировке записи, отложить обработку сообщения. | ||
| 186 | if (messageError == Constants.Module.ErrorType.EntityIsLocked) | ||
| 187 | { | ||
| 188 | message.MessageState = MessageState.Pending; | ||
| 189 | message.PostponeProcessing(60); // TODO в секундах. можно вынести в настройки | ||
| 190 | // TODO добавить ограничение по количеству попыток обработки | ||
| 191 | } | ||
| 192 | else | ||
| 193 | { | ||
| 194 | message.MarkAsErroneous(messageError); | ||
| 195 | |||
| 196 | var messageLink = string.Empty; | ||
| 197 | if (setting != null) | ||
| 198 | messageLink = Functions.Module.GetHyperlinkToDciProcess(setting, processGUID); | ||
| 199 | var errorText = DirRX.DciCore.Resources.ReceiveErrorDetailTextFormat(processName, processGUID, messageName, messageGUID, messageFolderPath, messageLink, messageError); | ||
| 200 | errors.Add(errorText); | ||
| 201 | } | ||
| 202 | } | ||
| 203 | message.Save(); | ||
| 204 | |||
| 205 | // Остановить процесс по синхронизации данных. | ||
| 206 | if (stopProcess) | ||
| 207 | Functions.Module.StopSynchronizationProcess(process); | ||
| 208 | } | ||
| 209 | catch (Exception ex) | ||
| 210 | { | ||
| 211 | errors.Add(string.Format("{0}\n{1}", ex.Message, ex.StackTrace)); | ||
| 212 | } | ||
| 213 | |||
| 214 | if (errors.Any()) | ||
| 215 | { | ||
| 216 | try | ||
| 217 | { | ||
| 218 | Logger.Error(string.Format("{0}. {1}. При обработке входящего сообщения DCI произошла ошибка. {2}", handlerName, messageGUID, string.Join(Environment.NewLine, errors))); | ||
| 219 | // TODO возможен спам задачами. Отправку уведомления в системе можно заменить на ФП по периодической проверке сообщений в состоянии Ошибка. | ||
| 220 | Functions.Module.SendNotificatiobAboutReceiveErrors(errors, processName, processGUID, messageName, messageGUID); | ||
| 221 | } | ||
| 222 | catch (Exception ex) | ||
| 223 | { | ||
| 224 | Logger.Error(string.Format("{0}. Ошибка при отправке уведомления об ошибках.", handlerName), ex); | ||
| 225 | } | ||
| 226 | } | ||
| 227 | |||
| 228 | Logger.Debug(string.Format("{0}. {1}. Конец обработки сообщения.", handlerName, messageGUID)); | ||
| 229 | } | ||
| 230 | |||
| 231 | } | ||
| 232 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | using Sungero.Domain.Initialization; | ||
| 7 | |||
| 8 | namespace DirRX.DciCore.Server | ||
| 9 | { | ||
| 10 | public partial class ModuleInitializer | ||
| 11 | { | ||
| 12 | |||
| 13 | public override void Initializing(Sungero.Domain.ModuleInitializingEventArgs e) | ||
| 14 | { | ||
| 15 | CreateDatabookRecords(); | ||
| 16 | } | ||
| 17 | |||
| 18 | /// <summary> | ||
| 19 | /// Создание записей справочника. | ||
| 20 | /// </summary> | ||
| 21 | public static void CreateDatabookRecords() | ||
| 22 | { | ||
| 23 | var processKind = DciProcessKinds.Null; | ||
| 24 | |||
| 25 | #region Процесс DCICheckLink. | ||
| 26 | |||
| 27 | processKind = CreateProcessKind(Constants.DciProcessKind.DCICheckLinkProcess.RecordGUID, | ||
| 28 | Constants.DciProcessKind.DCICheckLinkProcess.Name, | ||
| 29 | Constants.DciProcessKind.DCICheckLinkProcess.Note, | ||
| 30 | Constants.DciProcessKind.DCICheckLinkProcess.Description, | ||
| 31 | DciCore.DciProcessKind.ProcessType.Process, | ||
| 32 | Guid.Empty, | ||
| 33 | Calendar.SqlMinValue); | ||
| 34 | AddProcessMessage(processKind, | ||
| 35 | Constants.DciProcessKind.DCICheckLinkProcess.PingMessage.RowGUID, | ||
| 36 | Constants.DciProcessKind.DCICheckLinkProcess.PingMessage.Name, | ||
| 37 | Constants.DciProcessKind.DCICheckLinkProcess.PingMessage.Note); | ||
| 38 | AddProcessMessage(processKind, | ||
| 39 | Constants.DciProcessKind.DCICheckLinkProcess.PongMessage.RowGUID, | ||
| 40 | Constants.DciProcessKind.DCICheckLinkProcess.PongMessage.Name, | ||
| 41 | Constants.DciProcessKind.DCICheckLinkProcess.PongMessage.Note); | ||
| 42 | |||
| 43 | #endregion | ||
| 44 | } | ||
| 45 | |||
| 46 | /// <summary> | ||
| 47 | /// Создание записи в справочнике Виды межсистемных процессов. | ||
| 48 | /// </summary> | ||
| 49 | /// <param name="guid">Случайный GUID, ключевое поле записи - позволяет не привязываться к имени процесса и менять его.</param> | ||
| 50 | /// <param name="processName">Имя процесса.</param> | ||
| 51 | /// <param name="note">Примечания (заполняется один раз - при создании записи).</param> | ||
| 52 | /// <param name="description">Описание межсистемного процесса.</param> | ||
| 53 | /// <param name="processType">Тип процесса - синхронизация или сквозной бизнес-процесс.</param> | ||
| 54 | /// <param name="entityTypeGuid">GUID типа сущности.</param> | ||
| 55 | /// <param name="startSyncDate">Дата и время, от которой выполняется поиск измененных сущностей.</param> | ||
| 56 | /// <returns>Запись справочника Виды межсистемных процессов.</returns> | ||
| 57 | [Public] | ||
| 58 | public static IDciProcessKind CreateProcessKind(Guid guid, string processName, string note, string description, Enumeration processType, Guid entityTypeGuid, DateTime startSyncDate) | ||
| 59 | { | ||
| 60 | var record = DciProcessKinds.GetAll(x => x.GUID == guid.ToString()).FirstOrDefault(); | ||
| 61 | if (record == null) | ||
| 62 | { | ||
| 63 | InitializationLogger.Debug(string.Format("Виды межсистемных процессов. Создание записи для процесса {0}.", processName)); | ||
| 64 | record = DciProcessKinds.Create(); | ||
| 65 | record.GUID = guid.ToString(); | ||
| 66 | record.Note = note; | ||
| 67 | } | ||
| 68 | |||
| 69 | if (processName != record.Name) | ||
| 70 | record.Name = processName; | ||
| 71 | if (description != record.Description) | ||
| 72 | record.Description = description; | ||
| 73 | if (processType != record.ProcessType) | ||
| 74 | record.ProcessType = processType; | ||
| 75 | if (entityTypeGuid.ToString() != record.EntityTypeGUID) | ||
| 76 | record.EntityTypeGUID = entityTypeGuid.ToString(); | ||
| 77 | if (startSyncDate != record.LastOutSyncDate) | ||
| 78 | record.LastOutSyncDate = startSyncDate; | ||
| 79 | |||
| 80 | if (record.State.IsChanged) | ||
| 81 | { | ||
| 82 | InitializationLogger.Debug(string.Format("Виды межсистемных процессов. Сохранение записи для процесса {0}.", processName)); | ||
| 83 | record.Save(); | ||
| 84 | } | ||
| 85 | |||
| 86 | return record; | ||
| 87 | } | ||
| 88 | |||
| 89 | /// <summary> | ||
| 90 | /// Заполнение таблицы Сообщения в записи в справочника Виды межсистемных процессов. | ||
| 91 | /// </summary> | ||
| 92 | /// <param name="processKind">Запись справочника Виды межсистемных процессов.</param> | ||
| 93 | /// <param name="rowGUID">Случайный GUID, ключевое поле в таблице - позволяет не привязываться к имени сообщения и менять его.</param> | ||
| 94 | /// <param name="messageName">Имя сообщения.</param> | ||
| 95 | /// <param name="messageNote">Примечание.</param> | ||
| 96 | [Public] | ||
| 97 | public static void AddProcessMessage(IDciProcessKind processKind, Guid rowGUID, string messageName, string messageNote) | ||
| 98 | { | ||
| 99 | var row = processKind.Messages.Where(x => x.RowGUID == rowGUID.ToString()).FirstOrDefault(); | ||
| 100 | if (row == null) | ||
| 101 | { | ||
| 102 | InitializationLogger.Debug(string.Format("Виды межсистемных процессов. Добавление сообщения {0} для процесса {1}.", messageName, processKind.Name)); | ||
| 103 | row = processKind.Messages.AddNew(); | ||
| 104 | row.RowGUID = rowGUID.ToString(); | ||
| 105 | } | ||
| 106 | |||
| 107 | if (messageName != row.Name) | ||
| 108 | row.Name = messageName; | ||
| 109 | if (messageNote != row.Note) | ||
| 110 | row.Note = messageNote; | ||
| 111 | |||
| 112 | if (processKind.State.IsChanged) | ||
| 113 | { | ||
| 114 | InitializationLogger.Debug(string.Format("Виды межсистемных процессов. Сохранение сообщения {0} для процесса {1}.", messageName, processKind.Name)); | ||
| 115 | processKind.Save(); | ||
| 116 | } | ||
| 117 | } | ||
| 118 | } | ||
| 119 | } |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | |||
| 7 | namespace DirRX.DciCore.Server | ||
| 8 | { | ||
| 9 | public class ModuleJobs | ||
| 10 | { | ||
| 11 | |||
| 12 | /// <summary> | ||
| 13 | /// ФП запускает АО для отправки изменений из RX в DCI. | ||
| 14 | /// </summary> | ||
| 15 | public virtual void SendEntitiesToDciSynchronization() | ||
| 16 | { | ||
| 17 | |||
| 18 | var activeProcessKinds = DciProcessKinds.GetAll() | ||
| 19 | .Where(x => x.Status == Sungero.CoreEntities.DatabookEntry.Status.Active) | ||
| 20 | .Where(x => x.ProcessType == DciCore.DciProcessKind.ProcessType.DataSync || x.ProcessType == DciCore.DciProcessKind.ProcessType.DocSync); | ||
| 21 | |||
| 22 | foreach (var processKind in activeProcessKinds) | ||
| 23 | { | ||
| 24 | var asyncHandler = DciCore.AsyncHandlers.SendProcessMessage.Create(); | ||
| 25 | asyncHandler.IdProcessKind = processKind.Id; | ||
| 26 | asyncHandler.NameProcessKind = processKind.Name; | ||
| 27 | asyncHandler.ExecuteAsync(); | ||
| 28 | } | ||
| 29 | |||
| 30 | // TODO нет обработки ошибок | ||
| 31 | // TODO нет логов | ||
| 32 | } | ||
| 33 | |||
| 34 | } | ||
| 35 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | using Directum.Dci.Sdk; | ||
| 7 | using Directum.Dci.Common; | ||
| 8 | |||
| 9 | namespace DirRX.DciCore.Server | ||
| 10 | { | ||
| 11 | public class ModuleFunctions | ||
| 12 | { | ||
| 13 | /// <summary> | ||
| 14 | /// Запустить асинхронный обработчик для обработки входящего сообщения DCI. | ||
| 15 | /// </summary> | ||
| 16 | /// <param name="processMessageGlobalId">GUID сообщения DCI.</param> | ||
| 17 | /// <returns>Текст ошибки или строка "Success".</returns> | ||
| 18 | [Public(WebApiRequestType = RequestType.Post)] | ||
| 19 | public string EnqueueDciMessage(string processMessageGlobalId) | ||
| 20 | { | ||
| 21 | var logPrefix = string.Format("EnqueueDciMessageHandler. Received DCI message GUID = {0}", processMessageGlobalId); | ||
| 22 | |||
| 23 | try | ||
| 24 | { | ||
| 25 | Logger.DebugFormat("{0}. Start RX async handler.", logPrefix); | ||
| 26 | |||
| 27 | var handler = DirRX.DciCore.AsyncHandlers.ReceiveProcessMessage.Create(); | ||
| 28 | handler.MessageGUID = processMessageGlobalId; | ||
| 29 | handler.ExecuteAsync(); | ||
| 30 | |||
| 31 | Logger.DebugFormat("{0}. The end of the function.", logPrefix); | ||
| 32 | |||
| 33 | // DCI не принимает string.Empty в качестве результата. | ||
| 34 | return "Success"; | ||
| 35 | } | ||
| 36 | catch (Exception ex) | ||
| 37 | { | ||
| 38 | var errorMessage = string.Format("{0}. The ended with error.", logPrefix); | ||
| 39 | Logger.Error(errorMessage, ex); | ||
| 40 | return errorMessage; | ||
| 41 | } | ||
| 42 | } | ||
| 43 | |||
| 44 | #region Подбор обработчиков по switch-case | ||
| 45 | |||
| 46 | /// <summary> | ||
| 47 | /// Обработать входящее сообщение из DCI. | ||
| 48 | /// </summary> | ||
| 49 | /// <param name="messageGUID">GUID сообщения DCI.</param> | ||
| 50 | /// <returns>Текст ошибки при обработке сообщения из DCI.</returns> | ||
| 51 | public virtual string ProcessDCIMessage(Directum.Dci.Sdk.IProcessMessage message) | ||
| 52 | { | ||
| 53 | var processName = message.ProcessKindName; | ||
| 54 | var messageName = message.Name; | ||
| 55 | |||
| 56 | #region DCICheckLink. | ||
| 57 | if (processName == Constants.DciProcessKind.DCICheckLinkProcess.Name) | ||
| 58 | { | ||
| 59 | switch (messageName) | ||
| 60 | { | ||
| 61 | case Constants.DciProcessKind.DCICheckLinkProcess.PingMessage.Name: | ||
| 62 | return ProcessPingDciMessage(message); | ||
| 63 | case Constants.DciProcessKind.DCICheckLinkProcess.PongMessage.Name: | ||
| 64 | return ProcessPongDciMessage(message); | ||
| 65 | default: | ||
| 66 | break; | ||
| 67 | } | ||
| 68 | } | ||
| 69 | #endregion | ||
| 70 | |||
| 71 | return DirRX.DciCore.Resources.NotFoundReceiveHandlerByProcessFormat(messageName, processName); | ||
| 72 | } | ||
| 73 | |||
| 74 | /// <summary> | ||
| 75 | /// Подобрать имя исходящего сообщения для сущности. | ||
| 76 | /// </summary> | ||
| 77 | /// <param name="entity">Сущность.</param> | ||
| 78 | /// <returns>Имя сообщения.</returns> | ||
| 79 | [Public] | ||
| 80 | public virtual string GetDCIMessageNameByEntity(Sungero.CoreEntities.IDatabookEntry entity) | ||
| 81 | { | ||
| 82 | // Реализован самый простой способ вычислить имя сообщения - изменена/удалена. Данный фрагмент используется по умолчанию для всех типов сущности. | ||
| 83 | var messageName = string.Empty; | ||
| 84 | |||
| 85 | if (entity == null) | ||
| 86 | messageName = Constants.DciProcessKind.DefaultDciMessageName.RecordDeletion; | ||
| 87 | else | ||
| 88 | messageName = Constants.DciProcessKind.DefaultDciMessageName.RecordChanges; | ||
| 89 | |||
| 90 | return messageName; | ||
| 91 | |||
| 92 | #region Шаблон кода для реализации функции в перекрытии. | ||
| 93 | //// var messageName = string.Empty; | ||
| 94 | //// if (<Репозиторий типа сущности>.Is(entity)) | ||
| 95 | //// { | ||
| 96 | /// // Поиск нужной операции в истории типа сущности и подбор имени сообщения. | ||
| 97 | /// return messageName | ||
| 98 | //// } | ||
| 99 | //// return base.GetDCIMessageNameByEntity(entity); | ||
| 100 | #endregion | ||
| 101 | } | ||
| 102 | |||
| 103 | /// <summary> | ||
| 104 | /// Подготовить вложение для исходящего сообщения DCI. | ||
| 105 | /// </summary> | ||
| 106 | /// <param name="message">Сообщение DCI.</param> | ||
| 107 | /// <param name="entity">Сущность.</param> | ||
| 108 | /// <param name="globalEntityId">Глобальный ИД сущности.</param> | ||
| 109 | /// <returns>Обновленное сообщение DCI.</returns> | ||
| 110 | public virtual Directum.Dci.Sdk.IProcessMessage PrepareDCIMessageAttach(Directum.Dci.Sdk.IProcessMessage message, Sungero.CoreEntities.IDatabookEntry entity, string globalEntityId) | ||
| 111 | { | ||
| 112 | var processName = message.ProcessKindName; | ||
| 113 | var messageName = message.Name; | ||
| 114 | |||
| 115 | #region Шаблон кода для реализации функции в перекрытии. | ||
| 116 | //// var processName = message.ProcessKindName; | ||
| 117 | //// var messageName = message.Name; | ||
| 118 | //// | ||
| 119 | //// switch (processName) | ||
| 120 | //// { | ||
| 121 | //// #region <Имя типа справочника>. | ||
| 122 | //// case <Имя процесса синхронизации, обычно заканчивается на ReferenceSynchronization>: | ||
| 123 | //// switch (messageName) | ||
| 124 | //// { | ||
| 125 | //// case Constants.DciProcessKind.DefaultDciMessageName.RecordChanges: | ||
| 126 | //// return Fill<Имя типа сущности>DCIMessageAttach(message, entity, globalEntityId); | ||
| 127 | //// | ||
| 128 | //// case Constants.DciProcessKind.DefaultDciMessageName.RecordDeletion: | ||
| 129 | //// return CreateDeletionDCIMessageAttach(message, globalEntityId); | ||
| 130 | //// | ||
| 131 | //// default: | ||
| 132 | //// break; | ||
| 133 | //// } | ||
| 134 | //// break; | ||
| 135 | //// #endregion | ||
| 136 | //// } | ||
| 137 | //// | ||
| 138 | //// return base.PrepareDCIMessageAttach(message, entity, globalEntityId); | ||
| 139 | #endregion | ||
| 140 | |||
| 141 | throw new AppliedCodeException(DirRX.DciCore.Resources.NotFoundPrepareHandlerByProcessFormat(messageName, processName)); | ||
| 142 | } | ||
| 143 | |||
| 144 | #endregion | ||
| 145 | |||
| 146 | #region API DCI. | ||
| 147 | |||
| 148 | /// <summary> | ||
| 149 | /// Получить фабрику работы с процессами DCI. | ||
| 150 | /// </summary> | ||
| 151 | /// <returns>Фабрика.</returns> | ||
| 152 | public Directum.Dci.Sdk.ProcessFactory GetProcessFactory() | ||
| 153 | { | ||
| 154 | var setting = Functions.DciSetting.GetDciSettings(); | ||
| 155 | return GetProcessFactory(setting); | ||
| 156 | } | ||
| 157 | |||
| 158 | /// <summary> | ||
| 159 | /// Получить фабрику работы с процессами DCI. | ||
| 160 | /// </summary> | ||
| 161 | /// <param name="setting">Запись справочника "Настройки DCI".</param> | ||
| 162 | /// <returns>Фабрика.</returns> | ||
| 163 | public Directum.Dci.Sdk.ProcessFactory GetProcessFactory(IDciSetting setting) | ||
| 164 | { | ||
| 165 | return ProcessFactory.GetFactory(setting.ExchangeFolder, setting.AdapterServiceUrl); | ||
| 166 | } | ||
| 167 | |||
| 168 | /// <summary> | ||
| 169 | /// Получить процесс по сообщению DCI. | ||
| 170 | /// </summary> | ||
| 171 | /// <param name="message">Сообщение DCI.</param> | ||
| 172 | /// <returns>Процесс DCI.</returns> | ||
| 173 | public Directum.Dci.Sdk.IProcess GetProcessByMessage(Directum.Dci.Sdk.IProcessMessage message) | ||
| 174 | { | ||
| 175 | var factory = GetProcessFactory(); | ||
| 176 | return factory.GetProcessByMessage(message); | ||
| 177 | } | ||
| 178 | |||
| 179 | /// <summary> | ||
| 180 | /// Получить глобальный ИД предыдущего отправленного сообщения по процессу. | ||
| 181 | /// </summary> | ||
| 182 | /// <param name="entityGlobalId">Глобальный ИД объекта.</param> | ||
| 183 | /// <param name="processName"></param> | ||
| 184 | /// <param name="externalSystemID">Идентификатор внешней системы.</param> | ||
| 185 | /// <returns>Глобальный ИД ведущего сообщения</returns> | ||
| 186 | public string GetLastSentMessageGloblalId(string entityGlobalId, string processName, string externalSystemID) | ||
| 187 | { | ||
| 188 | var processFactory = GetProcessFactory(); | ||
| 189 | |||
| 190 | var lastSentMessageGlobalId = string.Empty; | ||
| 191 | if (string.IsNullOrEmpty(entityGlobalId)) | ||
| 192 | return lastSentMessageGlobalId; | ||
| 193 | |||
| 194 | // Найти последнее отправленное сообщение по процессу, для указания его ведущим. | ||
| 195 | var processParams = new ObjectDictionary(); | ||
| 196 | processParams.SetVar("RecordGUID", entityGlobalId); | ||
| 197 | var foundProcesses = processFactory.GetProcessesByParameters(processParams); | ||
| 198 | if (foundProcesses.Count == 0) | ||
| 199 | return lastSentMessageGlobalId; | ||
| 200 | |||
| 201 | while (!foundProcesses.EOF) | ||
| 202 | { | ||
| 203 | var process = (Directum.Dci.Sdk.IProcess)foundProcesses.Value; | ||
| 204 | if (process.ProcessKindName == processName) | ||
| 205 | { | ||
| 206 | var lastSentMessage = process.GetLastSentDependentMessage(externalSystemID); | ||
| 207 | if (lastSentMessage != null) | ||
| 208 | { | ||
| 209 | // Делам связь с предыдущим сообщением не зависимо от его состояния (Ошибка/Отправлено), так как неизвестно состояние сообщения на принимающей стороне. | ||
| 210 | lastSentMessageGlobalId = lastSentMessage.GlobalId; | ||
| 211 | //break; | ||
| 212 | } | ||
| 213 | else | ||
| 214 | { | ||
| 215 | // HACK в случае когда метод GetLastSentDependentMessage ничего не вернул, выполняем поиск единственного отправленного сообщения. | ||
| 216 | // HACK как альтернатива поиску - помечать все сообщения как имеющее зависимость (isDepended), но при этом не заполнять ведущее сообщение (LeaderMessageGlobalId) - тогда GetLastSentDependentMessage вернет последнее отправленное сообщение. | ||
| 217 | var allMessages = process.GetAllMessages(); | ||
| 218 | if (allMessages.Count == 1) | ||
| 219 | { | ||
| 220 | var firstMessage = (Directum.Dci.Sdk.IProcessMessage)allMessages.Value; | ||
| 221 | if (firstMessage != null) | ||
| 222 | lastSentMessageGlobalId = firstMessage.GlobalId; | ||
| 223 | //break; | ||
| 224 | } | ||
| 225 | } | ||
| 226 | } | ||
| 227 | foundProcesses.Next(); | ||
| 228 | } | ||
| 229 | return lastSentMessageGlobalId; | ||
| 230 | } | ||
| 231 | |||
| 232 | /// <summary> | ||
| 233 | /// Создать сообщение. | ||
| 234 | /// </summary> | ||
| 235 | /// <param name="processName">Имя процесса.</param> | ||
| 236 | /// <param name="messageName">Имя сообщения.</param> | ||
| 237 | /// <param name="processGlobalId">GUID процесса.</param> | ||
| 238 | /// <param name="entityId">ИД синхронизируемого объекта.</param> | ||
| 239 | /// <param name="objectTypeGlobalId">GUID типа синхронизируемого объекта.</param> | ||
| 240 | /// <param name="processFactory">Фабрика DCI.</param> | ||
| 241 | /// <param name="setting">Запись справочника "Настройки DCI".</param> | ||
| 242 | /// <param name="stopWhenConfirmed">Признак автоматического закрытия процесса при подтверждении всех отправленных сообщений.</param> | ||
| 243 | /// <returns>Сообщение.</returns> | ||
| 244 | public Directum.Dci.Sdk.IProcessMessage CreateMessage(string processName, string messageName, | ||
| 245 | string processGlobalId, int entityId, | ||
| 246 | string objectTypeGlobalId, Directum.Dci.Sdk.ProcessFactory processFactory, | ||
| 247 | IDciSetting setting, bool stopWhenConfirmed) | ||
| 248 | { | ||
| 249 | // Определить процесс по синхронизируемому объекту | ||
| 250 | var entityGlobalId = string.Empty; | ||
| 251 | var lastSentMessageGlobalId = string.Empty; | ||
| 252 | var isDepended = false; | ||
| 253 | if (entityId > int.MinValue) | ||
| 254 | { | ||
| 255 | // // TODO доп. действия для документов. Реализовать при проработке отправки сообщений. | ||
| 256 | // // // Для документов переопределить гуид типа сущности. | ||
| 257 | // // if (processName == "DocumentSynchronization") | ||
| 258 | // // { | ||
| 259 | // // if (string.IsNullOrEmpty(objectTypeGlobalId)) | ||
| 260 | // // { | ||
| 261 | // // var document = Content.ElectronicDocuments.Get(entityId); | ||
| 262 | // // var meta = document.GetEntityMetadata(); | ||
| 263 | // // objectTypeGlobalId = meta.NameGuid.ToString(); | ||
| 264 | // // } | ||
| 265 | // // } | ||
| 266 | // TODO вынести из функции | ||
| 267 | var entityLink = GetExternalEntityLink(entityId, objectTypeGlobalId, setting.ExternalSystemID); | ||
| 268 | entityGlobalId = entityLink.ExtEntityId.ToString(); | ||
| 269 | |||
| 270 | lastSentMessageGlobalId = GetLastSentMessageGloblalId(entityGlobalId, processName, setting.ExternalSystemID); | ||
| 271 | if (!string.IsNullOrEmpty(lastSentMessageGlobalId)) | ||
| 272 | { | ||
| 273 | isDepended = true; | ||
| 274 | // По ведущему сообщению получить GUID процесса. | ||
| 275 | var leadMessage = processFactory.GetProcessMessageByGlobalId(lastSentMessageGlobalId); | ||
| 276 | processGlobalId = leadMessage.ProcessGlobalId; | ||
| 277 | } | ||
| 278 | } | ||
| 279 | |||
| 280 | // Создать новый процесс или использовать существующий. | ||
| 281 | var process = string.IsNullOrEmpty(processGlobalId) ? processFactory.CreateProcess(processName) : processFactory.GetProcessByGlobalId(processGlobalId); | ||
| 282 | // Указать GUID синхронизируемого объекта в параметрах процесса. | ||
| 283 | // TODO вынести RecordGUID в константы. Реализовать при проработке отправки сообщений. | ||
| 284 | if (!string.IsNullOrEmpty(entityGlobalId) && process.Params.FindItem("RecordGUID") == null) | ||
| 285 | process.Params.SetVar("RecordGUID", entityGlobalId); | ||
| 286 | process.StopWhenConfirmed = stopWhenConfirmed; | ||
| 287 | process.Save(); | ||
| 288 | |||
| 289 | var message = process.CreateProcessMessage(messageName, setting.SystemID, setting.ExternalSystemID, string.Empty, isDepended); | ||
| 290 | if (isDepended) | ||
| 291 | message.LeaderMessageGlobalId = lastSentMessageGlobalId; | ||
| 292 | message.Save(); | ||
| 293 | |||
| 294 | return message; | ||
| 295 | } | ||
| 296 | |||
| 297 | /// <summary> | ||
| 298 | /// Остановить межсистемный процесс по синхронизации. | ||
| 299 | /// </summary> | ||
| 300 | /// <param name="process">Процесс DCI.</param> | ||
| 301 | public void StopSynchronizationProcess(Directum.Dci.Sdk.IProcess process) | ||
| 302 | { | ||
| 303 | var processKind = Functions.DciProcessKind.GetProcessKindByName(process.ProcessKindName); | ||
| 304 | // Если тип процесса - синхронизация (справочников/документов), то завершить процесс. | ||
| 305 | if (processKind.ProcessType == DciCore.DciProcessKind.ProcessType.DataSync || processKind.ProcessType == DciCore.DciProcessKind.ProcessType.DocSync) | ||
| 306 | { | ||
| 307 | Logger.Debug(string.Format("Процесс {0}. Завершение процесса синхронизации.", process.GlobalId)); | ||
| 308 | try | ||
| 309 | { | ||
| 310 | var endDate = process.EndDate; | ||
| 311 | if (endDate != null && !string.IsNullOrWhiteSpace(endDate.ToString())) | ||
| 312 | { | ||
| 313 | Logger.Debug(string.Format("Процесс {0}. Процесс уже завершен. Дата завершения: {1}", process.GlobalId, endDate)); | ||
| 314 | } | ||
| 315 | else | ||
| 316 | { | ||
| 317 | process.Stop(); | ||
| 318 | Logger.Debug(string.Format("Процесс {0}. Процесс завершен.", process.GlobalId)); | ||
| 319 | } | ||
| 320 | } | ||
| 321 | catch (Exception ex) | ||
| 322 | { | ||
| 323 | Logger.Error(string.Format("Процесс {0}. Ошибка завершения процесса.\n{1}\n{2}", process.GlobalId, ex.Message, ex.StackTrace)); | ||
| 324 | } | ||
| 325 | } | ||
| 326 | } | ||
| 327 | |||
| 328 | #endregion | ||
| 329 | |||
| 330 | #region API для ExternalEntityLinks. | ||
| 331 | |||
| 332 | /// <summary> | ||
| 333 | /// Получить запись справочника "Ссылки внешней системы" для экземпляра сущности. | ||
| 334 | /// </summary> | ||
| 335 | /// <param name="entityId">ИД сущности.</param> | ||
| 336 | /// <param name="entityTypeGuid">GUID типа сущности.</param> | ||
| 337 | /// <param name="externalSystemID">Идентификатор внешней системы.</param> | ||
| 338 | /// <returns>Запись справочника "Ссылки внешней системы" для экземпляра сущности.</returns> | ||
| 339 | [Public, Remote] | ||
| 340 | public Sungero.Commons.IExternalEntityLink GetExternalEntityLink(int entityId, string entityTypeGuid, string externalSystemID) | ||
| 341 | { | ||
| 342 | // TODO Использовать ли поле ExtSystemId в ExternalEntityLinks для нескольких внешних систем. Проработать когда будет несколько систем. | ||
| 343 | var externalLink = Sungero.Commons.ExternalEntityLinks.GetAll() | ||
| 344 | .Where(l => l.EntityId == entityId && l.EntityType == entityTypeGuid) | ||
| 345 | .FirstOrDefault(); | ||
| 346 | if (externalLink == null) | ||
| 347 | { | ||
| 348 | var newGuid = Guid.NewGuid().ToString(); | ||
| 349 | externalLink = SetExternalEntityLinkGuid(entityId, entityTypeGuid, externalSystemID, newGuid); | ||
| 350 | } | ||
| 351 | return externalLink; | ||
| 352 | } | ||
| 353 | |||
| 354 | /// <summary> | ||
| 355 | /// Установить GUID внешней ссылки для экземпляра сущности. | ||
| 356 | /// </summary> | ||
| 357 | /// <param name="entityId">Ид сущности.</param> | ||
| 358 | /// <param name="entityTypeGuid">GUID типа сущности.</param> | ||
| 359 | /// <param name="externalSystemID">Идентификатор внешней системы.</param> | ||
| 360 | /// <param name="externalEntityGuid">Внешний GUID сущности.</param> | ||
| 361 | [Public, Remote] | ||
| 362 | public Sungero.Commons.IExternalEntityLink SetExternalEntityLinkGuid(int entityId, string entityTypeGuid, string externalSystemID, string externalEntityGuid) | ||
| 363 | { | ||
| 364 | var externalLink = Sungero.Commons.ExternalEntityLinks.Create(); | ||
| 365 | externalLink.EntityId = entityId; | ||
| 366 | externalLink.EntityType = entityTypeGuid; | ||
| 367 | externalLink.ExtSystemId = externalSystemID; | ||
| 368 | externalLink.ExtEntityId = Guid.Parse(externalEntityGuid).ToString(); | ||
| 369 | externalLink.Save(); | ||
| 370 | |||
| 371 | return externalLink; | ||
| 372 | } | ||
| 373 | |||
| 374 | /// <summary> | ||
| 375 | /// Получить все записи справочника по глобальному идентификатору сущности. | ||
| 376 | /// </summary> | ||
| 377 | /// <param name="guid">Глобальный идентификатор.</param> | ||
| 378 | /// <returns>Коллекция сущностей или null.</returns> | ||
| 379 | [Public, Remote(IsPure = true)] | ||
| 380 | public IQueryable<Sungero.Commons.IExternalEntityLink> GetAllEntityLinksByGuid(string guid) | ||
| 381 | { | ||
| 382 | var globalId = Guid.Parse(guid).ToString(); | ||
| 383 | // TODO Использовать ли поле ExtSystemId в ExternalEntityLinks для нескольких внешних систем.Проработать когда будет несколько систем. | ||
| 384 | var externalLinks = Sungero.Commons.ExternalEntityLinks.GetAll() | ||
| 385 | .Where(x => x.ExtEntityId == globalId); | ||
| 386 | return externalLinks; | ||
| 387 | } | ||
| 388 | |||
| 389 | /// <summary> | ||
| 390 | /// Получить запись справочника по глобальному идентификатору сущности. | ||
| 391 | /// </summary> | ||
| 392 | /// <param name="guid">Глобальный идентификатор.</param> | ||
| 393 | /// <returns>Сущность или null.</returns> | ||
| 394 | [Public, Remote(IsPure = true)] | ||
| 395 | public Sungero.Commons.IExternalEntityLink GetEntityLinkByGuid(string guid) | ||
| 396 | { | ||
| 397 | if (string.IsNullOrWhiteSpace(guid)) | ||
| 398 | return null; | ||
| 399 | |||
| 400 | return GetAllEntityLinksByGuid(guid).FirstOrDefault(); | ||
| 401 | } | ||
| 402 | |||
| 403 | /// <summary> | ||
| 404 | /// Получить ИД сущности по глобальному идентификатору сущности. | ||
| 405 | /// </summary> | ||
| 406 | /// <param name="guid">Глобальный идентификатор.</param> | ||
| 407 | /// <returns>ИД сущности или 0.</returns> | ||
| 408 | [Public, Remote(IsPure = true)] | ||
| 409 | public int GetEntityIdByGuid(string guid) | ||
| 410 | { | ||
| 411 | var externalLink = GetEntityLinkByGuid(guid); | ||
| 412 | return externalLink != null ? externalLink.EntityId.Value : 0; | ||
| 413 | } | ||
| 414 | #endregion | ||
| 415 | |||
| 416 | #region Функции по преобразованию даты. | ||
| 417 | |||
| 418 | /// <summary> | ||
| 419 | /// Преобразовать строку в дату. | ||
| 420 | /// </summary> | ||
| 421 | /// <param name="value">Строка формата ДД.ММ.ГГГГ (наличие ведущего нуля не принципиально).</param> | ||
| 422 | /// <returns>Дата-время или null.</returns> | ||
| 423 | /// <remarks>Генерирует исключение в случае ошибки преобразования.</remarks> | ||
| 424 | [Public] | ||
| 425 | public virtual DateTime? StringToDate(string value) | ||
| 426 | { | ||
| 427 | if (string.IsNullOrWhiteSpace(value)) | ||
| 428 | return null; | ||
| 429 | |||
| 430 | var util = new Directum.Dci.Sdk.Utils(); | ||
| 431 | return util.StringToDate(value); | ||
| 432 | } | ||
| 433 | |||
| 434 | /// <summary> | ||
| 435 | /// Преобразовать строку в дату со временем. | ||
| 436 | /// </summary> | ||
| 437 | /// <param name="value">Строка формата ДД.ММ.ГГГГ ЧЧ:ММ:СС.мс (наличие ведущего нуля не принципиально).</param> | ||
| 438 | /// <returns>Дата-время или null.</returns> | ||
| 439 | /// <remarks>Генерирует исключение в случае ошибки преобразования.</remarks> | ||
| 440 | [Public] | ||
| 441 | public virtual DateTime? StringToDateTime(string value) | ||
| 442 | { | ||
| 443 | if (string.IsNullOrWhiteSpace(value)) | ||
| 444 | return null; | ||
| 445 | |||
| 446 | var util = new Directum.Dci.Sdk.Utils(); | ||
| 447 | return util.StringToDateTime(value); | ||
| 448 | } | ||
| 449 | |||
| 450 | /// <summary> | ||
| 451 | /// Преобразовать дату в строку. | ||
| 452 | /// </summary> | ||
| 453 | /// <param name="value">Дата-время.</param> | ||
| 454 | /// <returns>Строка формата ДД.ММ.ГГГГ.</returns> | ||
| 455 | [Public] | ||
| 456 | public virtual string DateToDciString(DateTime value) | ||
| 457 | { | ||
| 458 | var util = new Directum.Dci.Sdk.Utils(); | ||
| 459 | return util.DateToString(value); | ||
| 460 | } | ||
| 461 | |||
| 462 | /// <summary> | ||
| 463 | /// Преобразовать дату со временем в строку. | ||
| 464 | /// </summary> | ||
| 465 | /// <param name="value">Дата-время.</param> | ||
| 466 | /// <returns>Строка формата ДД.ММ.ГГГГ ЧЧ:ММ:СС.мс.</returns> | ||
| 467 | [Public] | ||
| 468 | public virtual string DateTimeToDciString(DateTime value) | ||
| 469 | { | ||
| 470 | var util = new Directum.Dci.Sdk.Utils(); | ||
| 471 | return util.DateTimeToString(value); | ||
| 472 | } | ||
| 473 | |||
| 474 | #endregion | ||
| 475 | |||
| 476 | #region Прочие функции. | ||
| 477 | |||
| 478 | /// <summary> | ||
| 479 | /// Отправить уведомление об ошибках. | ||
| 480 | /// </summary> | ||
| 481 | /// <param name="errors">Список ошибок.</param> | ||
| 482 | /// <param name="processName">Имя процесса DCI.</param> | ||
| 483 | /// <param name="processGUID">GUID процесса DCI.</param> | ||
| 484 | /// <param name="messageName">Имя сообщения DCI.</param> | ||
| 485 | /// <param name="messageGUID">GUID сообщения DCI.</param> | ||
| 486 | [Public] | ||
| 487 | public virtual void SendNotificatiobAboutReceiveErrors(System.Collections.Generic.IList<string> errors, string processName, string processGUID, string messageName, string messageGUID) | ||
| 488 | { | ||
| 489 | var task = Sungero.Workflow.SimpleTasks.Create(); | ||
| 490 | var step = task.RouteSteps.AddNew(); | ||
| 491 | step.AssignmentType = Sungero.Workflow.SimpleTaskRouteSteps.AssignmentType.Notice; | ||
| 492 | step.Performer = Roles.Administrators; // TODO отправлять на спец роль. например Roles.GetAll(r => r.Sid == PublicConstants.Module.RoleGuid.DCIResponsible).First(); | ||
| 493 | task.Subject = DirRX.DciCore.Resources.ReceiveErrorTaskSubjectFormat(messageName, processName); | ||
| 494 | task.ActiveText = DirRX.DciCore.Resources.ReceiveErrorTaskTextFormat(string.Join(Environment.NewLine, errors)); | ||
| 495 | task.NeedsReview = false; | ||
| 496 | task.Start(); | ||
| 497 | } | ||
| 498 | |||
| 499 | /// <summary> | ||
| 500 | /// Найти запись справочника системы по ИД. | ||
| 501 | /// </summary> | ||
| 502 | /// <param name="entityId">ИД сущности.</param> | ||
| 503 | /// <param name="entityTypeGuid">GUID типа сущности.</param> | ||
| 504 | /// <returns>Сущность или null.</returns> | ||
| 505 | [Public, Remote(IsPure = true)] | ||
| 506 | public virtual Sungero.CoreEntities.IDatabookEntry GetDatabookEntityById(int entityId, string entityTypeGuid) | ||
| 507 | { | ||
| 508 | // HACK универсальный код по поиску записи справочника. | ||
| 509 | var targetEntity = Sungero.CoreEntities.Databooks.Null; | ||
| 510 | var entityList = Sungero.CoreEntities.Databooks.GetAll(e => e.Id == entityId); | ||
| 511 | // В linq-запросе не работает вызов GetType(), поэтому дальнейший перебор в цикле. | ||
| 512 | foreach (var entity in entityList) | ||
| 513 | { | ||
| 514 | var entityType = entity.GetType(); | ||
| 515 | if (entityType != null) | ||
| 516 | { | ||
| 517 | var guid = Sungero.Domain.Shared.TypeExtension.GetTypeGuid(entityType); | ||
| 518 | if (guid.ToString().ToLower() == entityTypeGuid.ToLower()) | ||
| 519 | { | ||
| 520 | if (targetEntity == null) | ||
| 521 | targetEntity = entity; | ||
| 522 | else | ||
| 523 | // Это исключение никогда не должно сработать, но если оно случится - нужно пересмотреть подход к поиску сущностей. | ||
| 524 | throw AppliedCodeException.Create(DirRX.DciCore.Resources.MultipleEntitiesFoundToDeleteFormat(entityId, entityTypeGuid)); | ||
| 525 | } | ||
| 526 | } | ||
| 527 | } | ||
| 528 | |||
| 529 | return targetEntity; | ||
| 530 | } | ||
| 531 | |||
| 532 | /// <summary> | ||
| 533 | /// Получить список измененных записей справочника за период. | ||
| 534 | /// </summary> | ||
| 535 | /// <param name="baseGuid">Базовый GUID типа сущности.</param> | ||
| 536 | /// <param name="dateBegin">Дата начала изменений.</param> | ||
| 537 | /// <param name="dateEnd">Дата конца изменений.</param> | ||
| 538 | /// <returns>Список ИД измененных записей справочника.</returns> | ||
| 539 | [Public] | ||
| 540 | public virtual IQueryable<int> GetChangedDatabookRecords(string baseGuid, DateTime dateBegin, DateTime dateEnd) | ||
| 541 | { | ||
| 542 | // HACK универсальный код по поиску в истории записей справочника. | ||
| 543 | |||
| 544 | var actions = new List<Enumeration?> { | ||
| 545 | Sungero.CoreEntities.History.Action.Create, | ||
| 546 | Sungero.CoreEntities.History.Action.Update, | ||
| 547 | Sungero.CoreEntities.History.Action.Delete}; | ||
| 548 | |||
| 549 | return Sungero.CoreEntities.DatabookHistories.GetAll() | ||
| 550 | .Where(h => h.EntityType.ToString() == baseGuid | ||
| 551 | && h.HistoryDate >= dateBegin | ||
| 552 | && h.HistoryDate <= dateEnd | ||
| 553 | && actions.Contains(h.Action)) | ||
| 554 | .Select(h => h.EntityId.Value) | ||
| 555 | .Distinct(); | ||
| 556 | } | ||
| 557 | |||
| 558 | #endregion | ||
| 559 | |||
| 560 | #region Шаблоны кода. | ||
| 561 | |||
| 562 | #region Шаблон кода для обработчика приема. | ||
| 563 | |||
| 564 | //// /// <summary> | ||
| 565 | //// /// Обработать сообщение по изменению "Имя типа сущности". | ||
| 566 | //// /// </summary> | ||
| 567 | //// /// <param name="message">Сообщение DCI.</param> | ||
| 568 | //// /// <returns>Пустая строка или текст ошибки.</returns> | ||
| 569 | //// public string Process<Имя типа сущности>DCIMessage(Directum.Dci.Sdk.IProcessMessage message) | ||
| 570 | //// { | ||
| 571 | //// /// ------------------------------------------------- | ||
| 572 | //// /// Подготовка к обработке сообщения. | ||
| 573 | //// /// ------------------------------------------------- | ||
| 574 | //// | ||
| 575 | //// // Получить данные из сообщения DCI. | ||
| 576 | //// var data = message.LoadData("MainRecord"); | ||
| 577 | //// var globalId = Guid.Parse(data.ValueByName("GUID").ToString()).ToString(); | ||
| 578 | //// var entityLink = GetEntityLinkByGuid(globalId); | ||
| 579 | //// | ||
| 580 | //// var entity = entityLink != null ? <Репозиторий типа сущности>.Get(entityLink.EntityId.Value) : <Репозиторий типа сущности>.Create(); | ||
| 581 | //// | ||
| 582 | //// // Если запись заблокирована, отправить сообщение повторно в очередь. | ||
| 583 | //// if (Locks.GetLockInfo(entity).IsLocked) | ||
| 584 | //// return Constants.Module.ErrorType.EntityIsLocked; | ||
| 585 | //// | ||
| 586 | //// /// ------------------------------------------------- | ||
| 587 | //// /// Обновление записи справочника. | ||
| 588 | //// /// ------------------------------------------------- | ||
| 589 | //// /// Для преобразования строковых значений в типы .net использовать функции: | ||
| 590 | //// /// StringToDouble - Преобразовать строку в double. | ||
| 591 | //// /// StringToInt - Преобразовать строку в целое число. | ||
| 592 | //// /// StringToDate - Преобразовать строку в дату. | ||
| 593 | //// /// StringToDateTime - Преобразовать строку в дату со временем. | ||
| 594 | //// /// Base64ToString - Раскодировать строку из base64. | ||
| 595 | //// /// и другие функции модуля DciCore. | ||
| 596 | //// | ||
| 597 | //// // Указать GUID базового типа сущности. | ||
| 598 | //// var entityTypeGuid = <GUID типа сущности>; | ||
| 599 | //// var name = data.ValueByName("Наименование").ToString(); | ||
| 600 | //// entity.Name = name; | ||
| 601 | //// entity.Save(); | ||
| 602 | //// | ||
| 603 | //// /// ------------------------------------------------- | ||
| 604 | //// /// Завершение приема сообщения. | ||
| 605 | //// /// ------------------------------------------------- | ||
| 606 | //// | ||
| 607 | //// if (entityLink == null) | ||
| 608 | //// SetExternalEntityLinkGuid(entity.Id, entityTypeGuid, message.Sender, globalId); | ||
| 609 | //// | ||
| 610 | //// return string.Empty; | ||
| 611 | //// } | ||
| 612 | |||
| 613 | #endregion | ||
| 614 | |||
| 615 | #region Шаблон кода для обработчика отправки. | ||
| 616 | |||
| 617 | //// /// <summary> | ||
| 618 | //// /// Заполнить сообщение DCI информацией для обновления "Имя типа сущности". | ||
| 619 | //// /// </summary> | ||
| 620 | //// /// <param name="message">Сообщение DCI.</param> | ||
| 621 | //// /// <param name="entity">Сущность.</param> | ||
| 622 | //// /// <param name="globalEntityId">Глобальный ИД сущности.</param> | ||
| 623 | //// /// <returns>Обновленное сообщение DCI.</returns> | ||
| 624 | //// public virtual Directum.Dci.Sdk.IProcessMessage Fill<Имя типа сущности>DCIMessageAttach(Directum.Dci.Sdk.IProcessMessage message, Sungero.CoreEntities.IDatabookEntry entity, string globalEntityId) | ||
| 625 | //// { | ||
| 626 | //// /// ------------------------------------------------- | ||
| 627 | //// /// Подготовка к формированию сообщения. | ||
| 628 | //// /// ------------------------------------------------- | ||
| 629 | //// var attach = new ObjectDictionary(); | ||
| 630 | //// attach.Add("GUID", globalEntityId); | ||
| 631 | //// | ||
| 632 | //// var record = <Репозиторий типа сущности>.As(entity); | ||
| 633 | //// | ||
| 634 | //// /// ------------------------------------------------- | ||
| 635 | //// /// Заполнение сообщения свойствами записи справочника. | ||
| 636 | //// /// ------------------------------------------------- | ||
| 637 | //// /// Для преобразования в строку можно использовать функции: | ||
| 638 | //// /// ConvertRXStatusToD5Status - Преобразовать статус записи RX в состояние записи D5. | ||
| 639 | //// /// StringToBase64 - Закодировать строку из base64. | ||
| 640 | //// /// и другие функции модуля DciCore. | ||
| 641 | //// attach.Add("Наименование", record.Name); | ||
| 642 | //// attach.Add("Состояние", DciCore.PublicFunctions.Module.ConvertD5StatusToRXStatus(record.Status)); | ||
| 643 | //// | ||
| 644 | //// /// ------------------------------------------------- | ||
| 645 | //// /// Завершение формирования сообщения. | ||
| 646 | //// /// ------------------------------------------------- | ||
| 647 | //// message.AttachData(attach, "MainRecord"); | ||
| 648 | //// message.Save(); | ||
| 649 | //// return message; | ||
| 650 | //// } | ||
| 651 | |||
| 652 | #endregion | ||
| 653 | |||
| 654 | #endregion | ||
| 655 | |||
| 656 | #region Функции-обработчики по приёму. | ||
| 657 | |||
| 658 | #region Обработчик по удалению. | ||
| 659 | |||
| 660 | /// <summary> | ||
| 661 | /// Обработать сообщение по удалению сущности. | ||
| 662 | /// </summary> | ||
| 663 | /// <param name="message">Сообщение DCI.</param> | ||
| 664 | /// <returns>Текст ошибки или пустая строка.</returns> | ||
| 665 | public virtual string ProcessDeletionDCIMessage(Directum.Dci.Sdk.IProcessMessage message) | ||
| 666 | { | ||
| 667 | var data = message.LoadData("DeletedRecordData"); | ||
| 668 | var guid = data.ValueByName("GUID"); | ||
| 669 | |||
| 670 | var globalId = Guid.Parse(guid.ToString()).ToString(); | ||
| 671 | var entityLink = GetEntityLinkByGuid(globalId); | ||
| 672 | if (entityLink == null) | ||
| 673 | return DirRX.DciCore.Resources.NotFoundExternalEntityLinkFormat(globalId); | ||
| 674 | |||
| 675 | // Сперва заполнить свойство IsDelete у ExternalEntityLinks и сохранить. Данное свойство используется в стандартной в событиях до удаления и если оно не означено, то запрещается удаление. | ||
| 676 | if (entityLink.IsDeleted != true) | ||
| 677 | { | ||
| 678 | entityLink.IsDeleted = true; | ||
| 679 | entityLink.Save(); | ||
| 680 | } | ||
| 681 | |||
| 682 | // Удалить сущность из системы. | ||
| 683 | var deleteResult = string.Empty; | ||
| 684 | try | ||
| 685 | { | ||
| 686 | var entityId = entityLink.EntityId.Value; | ||
| 687 | var entityTypeGuid = entityLink.EntityType; | ||
| 688 | deleteResult = DeleteEntityByProcessName(entityId, entityTypeGuid, message.ProcessKindName); | ||
| 689 | } | ||
| 690 | catch (Exception ex) | ||
| 691 | { | ||
| 692 | deleteResult = DirRX.DciCore.Resources.DeleteEntityErrorFormat(ex.Message, ex.StackTrace); | ||
| 693 | Logger.Error(string.Format("Процесс {0}. {1}", message.ProcessGlobalId, deleteResult)); | ||
| 694 | } | ||
| 695 | |||
| 696 | // Удалить связанные записи из справочника "Ссылки внешней системы". | ||
| 697 | if (string.IsNullOrWhiteSpace(deleteResult)) | ||
| 698 | { | ||
| 699 | /// HACK получаем все сущности, так как: | ||
| 700 | /// 1. В стандартной разработке есть код по удалению записи из справочника ссылки "Ссылки внешней системы", соответственно наша ссылка устаревает (ссылаться на отсутствующую запись справочника). | ||
| 701 | /// 2. Есть шанс что в справочнике могли создаться дубли. | ||
| 702 | var entityLinks = GetAllEntityLinksByGuid(globalId); | ||
| 703 | foreach (var link in entityLinks) | ||
| 704 | Sungero.Commons.ExternalEntityLinks.Delete(link); | ||
| 705 | } | ||
| 706 | |||
| 707 | return deleteResult; | ||
| 708 | } | ||
| 709 | |||
| 710 | /// <summary> | ||
| 711 | /// Удалить сущности из системы по ИД. | ||
| 712 | /// </summary> | ||
| 713 | /// <param name="entityId">ИД сущности.</param> | ||
| 714 | /// <param name="entityTypeGuid">GUID типа сущности.</param> | ||
| 715 | /// <param name="processName">Имя процесса DCI.</param> | ||
| 716 | /// <returns>Текст ошибки или пустая строка.</returns> | ||
| 717 | [Public, Remote] | ||
| 718 | public virtual string DeleteEntityByProcessName(int entityId, string entityTypeGuid, string processName) | ||
| 719 | { | ||
| 720 | // HACK универсальный код по удалению записи справочника. | ||
| 721 | // TODO нужна доработка для удаления документов | ||
| 722 | |||
| 723 | var targetEntity = GetDatabookEntityById(entityId, entityTypeGuid); | ||
| 724 | |||
| 725 | if (targetEntity == null) | ||
| 726 | return DirRX.DciCore.Resources.NoEntitiesFoundToDeleteFormat(entityId, entityTypeGuid); | ||
| 727 | |||
| 728 | var lockInfo = Locks.GetLockInfo(targetEntity); | ||
| 729 | if (lockInfo.IsLocked) | ||
| 730 | return DirRX.DciCore.PublicConstants.Module.ErrorType.EntityIsLocked; | ||
| 731 | |||
| 732 | Sungero.CoreEntities.Databooks.Delete(targetEntity); | ||
| 733 | |||
| 734 | return string.Empty; | ||
| 735 | |||
| 736 | #region Шаблон кода для реализации функции в перекрытии. | ||
| 737 | //// switch (processName) | ||
| 738 | //// { | ||
| 739 | //// case <Имя процесса синхронизации, обычно заканчивается на ReferenceSynchronization>: | ||
| 740 | //// var entity = <Репозиторий типа сущности>.Get(entityId); | ||
| 741 | //// // Если запись заблокирована, отправить сообщение повторно в очередь. | ||
| 742 | //// var lockInfo = Locks.GetLockInfo(entity); | ||
| 743 | //// if (lockInfo.IsLocked) | ||
| 744 | //// return Constants.Module.ErrorType.EntityIsLocked; | ||
| 745 | //// <Репозиторий типа сущности>.Delete(entity); | ||
| 746 | //// break; | ||
| 747 | //// default: | ||
| 748 | //// return base.DeleteEntityByProcessName(entityId, processName); | ||
| 749 | //// } | ||
| 750 | //// return string.Empty; | ||
| 751 | #endregion | ||
| 752 | |||
| 753 | //return DirRX.DciCore.Resources.NotFoundDeleteHandlerByProcessFormat(processName); | ||
| 754 | } | ||
| 755 | |||
| 756 | #endregion | ||
| 757 | |||
| 758 | #region DCICheckLink | ||
| 759 | |||
| 760 | /// <summary> | ||
| 761 | /// Обработать сообщение Ping. | ||
| 762 | /// </summary> | ||
| 763 | /// <param name="message">Сообщение DCI.</param> | ||
| 764 | /// <returns>Пустая строка или текст ошибки.</returns> | ||
| 765 | public string ProcessPingDciMessage(Directum.Dci.Sdk.IProcessMessage message) | ||
| 766 | { | ||
| 767 | // Получить словарь с данными из сообщения. | ||
| 768 | var data = message.LoadData("TestData"); | ||
| 769 | var dataGuid = data.ValueByName("GUID"); | ||
| 770 | var dataDate = data.ValueByName("Date"); | ||
| 771 | var dataNum1 = data.ValueByName("Num"); | ||
| 772 | var dataNum2 = data.ValueByName("Num2"); | ||
| 773 | |||
| 774 | if (dataGuid == null || dataDate == null || dataNum1 == null || dataNum2 == null) | ||
| 775 | return DirRX.DciCore.Resources.InsufficientDataError; | ||
| 776 | |||
| 777 | var guid = dataGuid.ToString(); | ||
| 778 | var date = dataDate.ToString(); | ||
| 779 | var num1 = dataNum1.ToString(); | ||
| 780 | var num2 = dataNum2.ToString(); | ||
| 781 | |||
| 782 | var stringBuilder = new System.Text.StringBuilder(); | ||
| 783 | |||
| 784 | stringBuilder.AppendLine(string.Format("Процесс: {0} ({1}). Сообщение: {2} ({3}). Получено сообщение. Значения данных:", | ||
| 785 | message.ProcessGlobalId, message.ProcessKindName, message.GlobalId, message.Name)); | ||
| 786 | stringBuilder.AppendLine(string.Format("GUID = {0}", guid)); | ||
| 787 | stringBuilder.AppendLine(string.Format("Date = {0}", date)); | ||
| 788 | stringBuilder.AppendLine(string.Format("Num = {0}", num1)); | ||
| 789 | stringBuilder.AppendLine(string.Format("Num2 = {0}", num2)); | ||
| 790 | Logger.Debug(stringBuilder.ToString()); | ||
| 791 | stringBuilder.Clear(); | ||
| 792 | |||
| 793 | Logger.Debug(string.Format("Процесс: {0} ({1}). Сообщение: {2} ({3}). Проверка данных...", | ||
| 794 | message.ProcessGlobalId, message.ProcessKindName, message.GlobalId, message.Name)); | ||
| 795 | DateTime tempDate; | ||
| 796 | var isDate = Calendar.TryParseDate(date, out tempDate); | ||
| 797 | var tempNum1 = Functions.Module.StringToDouble(num1); | ||
| 798 | var tempNum2 = Functions.Module.StringToDouble(num2); | ||
| 799 | var isNumber1 = (tempNum1 != null); | ||
| 800 | var isNumber2 = (tempNum2 != null); | ||
| 801 | tempNum1 += 1.5; | ||
| 802 | tempNum2 += 1.0 / 3.0; | ||
| 803 | |||
| 804 | stringBuilder.AppendLine(string.Format("Процесс: {0} ({1}). Сообщение: {2} ({3}). Результаты проверки данных:", | ||
| 805 | message.ProcessGlobalId, message.ProcessKindName, message.GlobalId, message.Name)); | ||
| 806 | stringBuilder.AppendLine(string.Format("Date = {0}, is date = {1}", date, isDate)); | ||
| 807 | stringBuilder.AppendLine(string.Format("Num = {0}, is double = {1}", num1, isNumber1)); | ||
| 808 | stringBuilder.AppendLine(string.Format("Num2 = {0}, is double = {1}", num2, isNumber2)); | ||
| 809 | stringBuilder.AppendLine(string.Format("Num + 1.5 = {0}", tempNum1)); | ||
| 810 | stringBuilder.AppendLine(string.Format("Num2 + 1/3 = {0}", tempNum2)); | ||
| 811 | Logger.Debug(stringBuilder.ToString()); | ||
| 812 | stringBuilder.Clear(); | ||
| 813 | |||
| 814 | Logger.Debug(string.Format("Процесс: {0} ({1}). Сообщение: {2} ({3}). Остановка процесса.", | ||
| 815 | message.ProcessGlobalId, message.ProcessKindName, message.GlobalId, message.Name)); | ||
| 816 | var process = GetProcessByMessage(message); | ||
| 817 | process.Stop(); | ||
| 818 | |||
| 819 | return string.Empty; | ||
| 820 | } | ||
| 821 | |||
| 822 | /// <summary> | ||
| 823 | /// Обработать сообщение Pong. | ||
| 824 | /// </summary> | ||
| 825 | /// <param name="message">Сообщение DCI.</param> | ||
| 826 | /// <returns>Пустая строка или текст ошибки.</returns> | ||
| 827 | public string ProcessPongDciMessage(Directum.Dci.Sdk.IProcessMessage message) | ||
| 828 | { | ||
| 829 | // Получить параметры сообщения. | ||
| 830 | var messageParams = message.Params; | ||
| 831 | var paramDirection = messageParams.ValueByName("Direction").ToString(); | ||
| 832 | var paramServiceType = messageParams.ValueByName("ServiceType").ToString(); | ||
| 833 | var paramEventTime = messageParams.ValueByName("EventTime").ToString(); | ||
| 834 | var paramEndpointType = messageParams.ValueByName("EndpointType").ToString(); | ||
| 835 | |||
| 836 | var paramIndex = 0; | ||
| 837 | var paramServiceName = string.Empty; | ||
| 838 | paramIndex = messageParams.IndexOfName("ServiceName"); | ||
| 839 | if (paramIndex >= 0) | ||
| 840 | paramServiceName = messageParams.GetValues(paramIndex).ToString(); | ||
| 841 | |||
| 842 | var paramEndpointName = string.Empty; | ||
| 843 | paramIndex = messageParams.IndexOfName("EndpointName"); | ||
| 844 | if (paramIndex >= 0) | ||
| 845 | paramEndpointName = messageParams.GetValues(paramIndex).ToString(); | ||
| 846 | |||
| 847 | // var stringBuilder = new System.Text.StringBuilder(); | ||
| 848 | // stringBuilder.AppendLine(string.Format("Процесс: {0} ({1}). Сообщение: {2} ({3}). Получено сообщение. Значения параметров:", | ||
| 849 | // message.ProcessGlobalId, message.ProcessKindName, message.GlobalId, message.Name)); | ||
| 850 | // stringBuilder.AppendLine(string.Format("paramDirection = {0}", paramDirection)); | ||
| 851 | // stringBuilder.AppendLine(string.Format("paramServiceType = {0}", paramServiceType)); | ||
| 852 | // stringBuilder.AppendLine(string.Format("paramEventTime = {0}", paramEventTime)); | ||
| 853 | // stringBuilder.AppendLine(string.Format("paramEndpointType = {0}", paramEndpointType)); | ||
| 854 | // stringBuilder.AppendLine(string.Format("paramServiceName = {0}", paramServiceName)); | ||
| 855 | // stringBuilder.AppendLine(string.Format("paramEndpointName = {0}", paramEndpointName)); | ||
| 856 | // Logger.Debug(stringBuilder.ToString()); | ||
| 857 | // stringBuilder.Clear(); | ||
| 858 | |||
| 859 | var eventStr = new System.Text.StringBuilder(); | ||
| 860 | var serviceType = string.Empty; | ||
| 861 | var endpointType = string.Empty; | ||
| 862 | eventStr.AppendFormat("Получатель {0}.", message.Sender); | ||
| 863 | if (paramServiceType == "SystemAdapter") | ||
| 864 | serviceType = "Адаптер к системе"; | ||
| 865 | else if (paramServiceType == "TransportAdapter") | ||
| 866 | serviceType = "Адаптер к транспорту"; | ||
| 867 | else if (paramServiceType == "Transport") | ||
| 868 | serviceType = "Транспорт"; | ||
| 869 | eventStr.AppendFormat(" {0}", serviceType); | ||
| 870 | |||
| 871 | if (!string.IsNullOrWhiteSpace(paramServiceName)) | ||
| 872 | eventStr.AppendFormat(" {0}", paramServiceName); | ||
| 873 | |||
| 874 | if (paramDirection == "From") | ||
| 875 | { | ||
| 876 | eventStr.Append(": Сообщение получено"); | ||
| 877 | |||
| 878 | if (paramEndpointType == "System") | ||
| 879 | endpointType = "из системы"; | ||
| 880 | else if (paramEndpointType == "RoutingService") | ||
| 881 | endpointType = "из сервиса маршрутизации"; | ||
| 882 | else if (paramEndpointType == "TransportAdapter") | ||
| 883 | endpointType = "из адаптера к транспорту"; | ||
| 884 | else if (paramEndpointType == "Transport") | ||
| 885 | endpointType = "из транспорта"; | ||
| 886 | |||
| 887 | eventStr.AppendFormat(" {0}", endpointType); | ||
| 888 | } | ||
| 889 | else | ||
| 890 | { | ||
| 891 | eventStr.Append(": Сообщение отправлено"); | ||
| 892 | |||
| 893 | if (paramEndpointType == "System") | ||
| 894 | endpointType = "в систему"; | ||
| 895 | else if (paramEndpointType == "RoutingService") | ||
| 896 | endpointType = "в сервис маршрутизации"; | ||
| 897 | else if (paramEndpointType == "TransportAdapter") | ||
| 898 | endpointType = "в адаптер к транспорту"; | ||
| 899 | else if (paramEndpointType == "Transport") | ||
| 900 | endpointType = "в транспорт"; | ||
| 901 | |||
| 902 | eventStr.AppendFormat(" {0}", endpointType); | ||
| 903 | } | ||
| 904 | |||
| 905 | if (!string.IsNullOrWhiteSpace(paramEndpointName)) | ||
| 906 | eventStr.AppendFormat(" {0}", paramEndpointName); | ||
| 907 | |||
| 908 | Logger.Debug(eventStr.ToString()); | ||
| 909 | |||
| 910 | return string.Empty; | ||
| 911 | } | ||
| 912 | #endregion | ||
| 913 | |||
| 914 | #endregion | ||
| 915 | |||
| 916 | #region Функции-обработчики по отправке. | ||
| 917 | |||
| 918 | #region DCICheckLink | ||
| 919 | |||
| 920 | /// <summary> | ||
| 921 | /// Отправить тестовое сообщение для проверки связи между системами. | ||
| 922 | /// </summary> | ||
| 923 | /// <returns>GUID процесса DCI.</returns> | ||
| 924 | [Public, Remote(IsPure = true)] | ||
| 925 | public string SendDciPing() | ||
| 926 | { | ||
| 927 | var setting = Functions.DciSetting.GetDciSettings(); | ||
| 928 | var processFactory = GetProcessFactory(setting); | ||
| 929 | |||
| 930 | var message = CreateMessage(Constants.DciProcessKind.DCICheckLinkProcess.Name, Constants.DciProcessKind.DCICheckLinkProcess.PingMessage.Name, string.Empty, int.MinValue, string.Empty, processFactory, setting, true); | ||
| 931 | |||
| 932 | // Сформировать тестовое сообщение. | ||
| 933 | var attach = new ObjectDictionary(); | ||
| 934 | attach.Add("GUID", Guid.NewGuid().ToDelphiGuid()); // TODO сделать более явный вызов ToDelphiGuid из Directum.Dci.Common. Реализовать при проработке отправки сообщений. | ||
| 935 | attach.Add("Date", Calendar.Today); | ||
| 936 | attach.Add("Num", 1.0 / 3.0); | ||
| 937 | attach.Add("Num2", 1.25); | ||
| 938 | attach.Add("TestStatus", Sungero.CoreEntities.DatabookEntry.Status.Active); | ||
| 939 | |||
| 940 | message.AttachData(attach, "TestData"); | ||
| 941 | message.Save(); | ||
| 942 | message.Send(); | ||
| 943 | |||
| 944 | var process = GetProcessByMessage(message); | ||
| 945 | return process.GlobalId; | ||
| 946 | } | ||
| 947 | |||
| 948 | #endregion | ||
| 949 | |||
| 950 | /// <summary> | ||
| 951 | /// Заполнить сообщение DCI информацией для удаления сущности. | ||
| 952 | /// </summary> | ||
| 953 | /// <param name="message">Сообщение DCI.</param> | ||
| 954 | /// <param name="globalEntityId">Глобальный ИД сущности.</param> | ||
| 955 | /// <returns>Обновленное сообщение DCI.</returns> | ||
| 956 | public virtual Directum.Dci.Sdk.IProcessMessage CreateDeletionDCIMessageAttach(Directum.Dci.Sdk.IProcessMessage message, string globalEntityId) | ||
| 957 | { | ||
| 958 | var attach = new ObjectDictionary(); | ||
| 959 | attach.Add("GUID", globalEntityId); | ||
| 960 | message.AttachData(attach, "DeletedRecordData"); | ||
| 961 | message.Save(); | ||
| 962 | return message; | ||
| 963 | // TODO помечать запись удаленной в extlinks | ||
| 964 | |||
| 965 | #region Шаблон кода для реализации функции в перекрытии. | ||
| 966 | //// switch (message.ProcessKindName) | ||
| 967 | //// { | ||
| 968 | //// case <Имя процесса синхронизации, обычно заканчивается на ReferenceSynchronization>: | ||
| 969 | //// var attach = new ObjectDictionary(); | ||
| 970 | //// attach.Add("GUID", globalEntityId); | ||
| 971 | //// message.AttachData(attach, "DeletedRecordData"); | ||
| 972 | //// | ||
| 973 | //// var entityId = GetEntityIdByGuid(globalEntityId); | ||
| 974 | //// var entity = <Репозиторий типа сущности>.Get(entityId); | ||
| 975 | //// var customAttach = new ObjectDictionary(); | ||
| 976 | //// //customAttach.Add("", entity.); | ||
| 977 | //// message.AttachData(customAttach, "CustomData"); | ||
| 978 | //// | ||
| 979 | //// message.Save(); | ||
| 980 | //// break; | ||
| 981 | //// | ||
| 982 | //// default: | ||
| 983 | //// return base.CreateDeletionDCIMessageAttach(message, globalEntityId); | ||
| 984 | //// } | ||
| 985 | //// return message; | ||
| 986 | #endregion | ||
| 987 | } | ||
| 988 | |||
| 989 | #endregion | ||
| 990 | |||
| 991 | } | ||
| 992 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | { | ||
| 2 | "$type": "Sungero.Metadata.EntityMetadata, Sungero.Metadata", | ||
| 3 | "NameGuid": "b8fb59dc-559f-40b8-8ad3-2df642ff71d5", | ||
| 4 | "Name": "DciProcessKind", | ||
| 5 | "BaseGuid": "04581d26-0780-4cfd-b3cd-c2cafc5798b0", | ||
| 6 | "CanBeNavigationPropertyType": true, | ||
| 7 | "Code": "DciProcessKind", | ||
| 8 | "CreationAreaMetadata": { | ||
| 9 | "NameGuid": "f7766750-eee2-4fcd-8003-5c06a90d1f44", | ||
| 10 | "Name": "CreationArea", | ||
| 11 | "Buttons": [], | ||
| 12 | "IsAncestorMetadata": true | ||
| 13 | }, | ||
| 14 | "ExtraSearchProperties": [], | ||
| 15 | "FilterPanel": { | ||
| 16 | "NameGuid": "b0125fbd-3b91-4dbb-914a-689276216404", | ||
| 17 | "Name": "FilterPanel", | ||
| 18 | "Controls": [], | ||
| 19 | "IsAncestorMetadata": true | ||
| 20 | }, | ||
| 21 | "Forms": [ | ||
| 22 | { | ||
| 23 | "$type": "Sungero.Metadata.StandaloneFormMetadata, Sungero.Metadata", | ||
| 24 | "NameGuid": "e3903018-e6ef-4336-a294-2ccdc8d0bf63", | ||
| 25 | "Name": "Card", | ||
| 26 | "Controls": [ | ||
| 27 | { | ||
| 28 | "$type": "Sungero.Metadata.ControlGroupMetadata, Sungero.Metadata", | ||
| 29 | "NameGuid": "ae9b3c49-c2d9-4028-ad33-4fa8226dcea8", | ||
| 30 | "Name": "ControlGroup" | ||
| 31 | }, | ||
| 32 | { | ||
| 33 | "$type": "Sungero.Metadata.ControlGroupMetadata, Sungero.Metadata", | ||
| 34 | "NameGuid": "7329a31f-6786-41d3-a5fc-cdd3fde0e7bf", | ||
| 35 | "Name": "Main", | ||
| 36 | "ColumnDefinitions": [ | ||
| 37 | { | ||
| 38 | "Percentage": 49.96 | ||
| 39 | }, | ||
| 40 | { | ||
| 41 | "Percentage": 50.04 | ||
| 42 | } | ||
| 43 | ], | ||
| 44 | "ColumnNumber": 0, | ||
| 45 | "ColumnSpan": 1, | ||
| 46 | "ParentGuid": "ae9b3c49-c2d9-4028-ad33-4fa8226dcea8", | ||
| 47 | "RowNumber": 0, | ||
| 48 | "RowSpan": 1 | ||
| 49 | }, | ||
| 50 | { | ||
| 51 | "$type": "Sungero.Metadata.ControlMetadata, Sungero.Metadata", | ||
| 52 | "NameGuid": "3193c97c-1a9f-499f-95a3-9168dc1bc0b3", | ||
| 53 | "Name": "Control", | ||
| 54 | "ColumnNumber": 0, | ||
| 55 | "ColumnSpan": 2, | ||
| 56 | "DataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 57 | "ParentGuid": "7329a31f-6786-41d3-a5fc-cdd3fde0e7bf", | ||
| 58 | "PropertyGuid": "9ce7f50e-38ac-4ce4-96e6-631b6a0524ce", | ||
| 59 | "RowNumber": 0, | ||
| 60 | "RowSpan": 1, | ||
| 61 | "Settings": [] | ||
| 62 | }, | ||
| 63 | { | ||
| 64 | "$type": "Sungero.Metadata.ControlMetadata, Sungero.Metadata", | ||
| 65 | "NameGuid": "03aa2121-2040-4083-9730-169604e1ebd6", | ||
| 66 | "Name": "ProcessType", | ||
| 67 | "ColumnNumber": 0, | ||
| 68 | "ColumnSpan": 1, | ||
| 69 | "DataBinderTypeName": "Sungero.Presentation.CommonDataBinders.DropDownEditorToEnumerationBinder", | ||
| 70 | "ParentGuid": "7329a31f-6786-41d3-a5fc-cdd3fde0e7bf", | ||
| 71 | "PropertyGuid": "a0d0f428-c7aa-47fb-95bb-3227ab2b48ed", | ||
| 72 | "RowNumber": 2, | ||
| 73 | "RowSpan": 1, | ||
| 74 | "Settings": [] | ||
| 75 | }, | ||
| 76 | { | ||
| 77 | "$type": "Sungero.Metadata.ControlMetadata, Sungero.Metadata", | ||
| 78 | "NameGuid": "940f57df-25e6-4130-acb3-bc1aae6659f4", | ||
| 79 | "Name": "Status", | ||
| 80 | "ColumnNumber": 0, | ||
| 81 | "ColumnSpan": 1, | ||
| 82 | "DataBinderTypeName": "Sungero.Presentation.CommonDataBinders.DropDownEditorToEnumerationBinder", | ||
| 83 | "ParentGuid": "7329a31f-6786-41d3-a5fc-cdd3fde0e7bf", | ||
| 84 | "PropertyGuid": "1dcedc29-5140-4770-ac92-eabc212326a1", | ||
| 85 | "RowNumber": 3, | ||
| 86 | "RowSpan": 1, | ||
| 87 | "Settings": [] | ||
| 88 | }, | ||
| 89 | { | ||
| 90 | "$type": "Sungero.Metadata.ControlMetadata, Sungero.Metadata", | ||
| 91 | "NameGuid": "0fa43e10-6d48-4828-add2-5632c0b1c4c6", | ||
| 92 | "Name": "Description", | ||
| 93 | "ColumnNumber": 0, | ||
| 94 | "ColumnSpan": 2, | ||
| 95 | "DataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 96 | "ParentGuid": "7329a31f-6786-41d3-a5fc-cdd3fde0e7bf", | ||
| 97 | "PropertyGuid": "93e6d0ee-f8cd-4418-ab62-fe087e38669b", | ||
| 98 | "RowNumber": 1, | ||
| 99 | "RowSpan": 1, | ||
| 100 | "Settings": [] | ||
| 101 | }, | ||
| 102 | { | ||
| 103 | "$type": "Sungero.Metadata.ControlGroupMetadata, Sungero.Metadata", | ||
| 104 | "NameGuid": "c424d5cc-88b4-4f81-a951-b57d2eabb9da", | ||
| 105 | "Name": "Additional", | ||
| 106 | "ColumnNumber": 0, | ||
| 107 | "ColumnSpan": 1, | ||
| 108 | "ParentGuid": "ae9b3c49-c2d9-4028-ad33-4fa8226dcea8", | ||
| 109 | "RowNumber": 1, | ||
| 110 | "RowSpan": 1 | ||
| 111 | }, | ||
| 112 | { | ||
| 113 | "$type": "Sungero.Metadata.ControlGroupMetadata, Sungero.Metadata", | ||
| 114 | "NameGuid": "3c299716-5b10-4c75-b130-49533d077c3d", | ||
| 115 | "Name": "Note", | ||
| 116 | "ColumnNumber": 0, | ||
| 117 | "ColumnSpan": 1, | ||
| 118 | "GroupType": "WithTitleNoBorder", | ||
| 119 | "ParentGuid": "ae9b3c49-c2d9-4028-ad33-4fa8226dcea8", | ||
| 120 | "RowNumber": 2, | ||
| 121 | "RowSpan": 1 | ||
| 122 | }, | ||
| 123 | { | ||
| 124 | "$type": "Sungero.Metadata.ControlGroupMetadata, Sungero.Metadata", | ||
| 125 | "NameGuid": "462ec2b8-adee-4c71-930c-660c2eeb52c8", | ||
| 126 | "Name": "Messages", | ||
| 127 | "ColumnNumber": 0, | ||
| 128 | "ColumnSpan": 1, | ||
| 129 | "GroupType": "WithTitleNoBorder", | ||
| 130 | "ParentGuid": "ae9b3c49-c2d9-4028-ad33-4fa8226dcea8", | ||
| 131 | "RowNumber": 3, | ||
| 132 | "RowSpan": 1 | ||
| 133 | }, | ||
| 134 | { | ||
| 135 | "$type": "Sungero.Metadata.ControlMetadata, Sungero.Metadata", | ||
| 136 | "NameGuid": "175cf315-4427-4d6b-8120-5bd7b57bd993", | ||
| 137 | "Name": "Messages", | ||
| 138 | "ColumnNumber": 0, | ||
| 139 | "ColumnSpan": 1, | ||
| 140 | "DataBinderTypeName": "Sungero.Presentation.CommonDataBinders.GridControlToChildCollectionBinder", | ||
| 141 | "HeaderLocation": "None", | ||
| 142 | "ParentGuid": "462ec2b8-adee-4c71-930c-660c2eeb52c8", | ||
| 143 | "PropertyGuid": "be1c954e-af9a-4fd0-b0c6-3f9bdcf93f11", | ||
| 144 | "RowNumber": 0, | ||
| 145 | "RowSpan": 1, | ||
| 146 | "Settings": [ | ||
| 147 | { | ||
| 148 | "Name": "NeedExpand", | ||
| 149 | "Value": true | ||
| 150 | } | ||
| 151 | ] | ||
| 152 | }, | ||
| 153 | { | ||
| 154 | "$type": "Sungero.Metadata.ControlMetadata, Sungero.Metadata", | ||
| 155 | "NameGuid": "5834aee8-ab03-4ea3-a8f5-fb9e23a1167d", | ||
| 156 | "Name": "Note", | ||
| 157 | "ColumnNumber": 0, | ||
| 158 | "ColumnSpan": 1, | ||
| 159 | "DataBinderTypeName": "Sungero.Presentation.CommonDataBinders.TextEditorToTextBinder", | ||
| 160 | "HeaderLocation": "None", | ||
| 161 | "ParentGuid": "3c299716-5b10-4c75-b130-49533d077c3d", | ||
| 162 | "PropertyGuid": "4bdb3aae-6cc0-41de-8a82-5f548a5d9d6a", | ||
| 163 | "RowNumber": 0, | ||
| 164 | "RowSpan": 1, | ||
| 165 | "Settings": [ | ||
| 166 | { | ||
| 167 | "Name": "Height", | ||
| 168 | "Value": 80 | ||
| 169 | } | ||
| 170 | ] | ||
| 171 | }, | ||
| 172 | { | ||
| 173 | "$type": "Sungero.Metadata.ControlMetadata, Sungero.Metadata", | ||
| 174 | "NameGuid": "3753bf8a-804c-4607-bf29-16b90ec2c4ca", | ||
| 175 | "Name": "LastDciSyncDate", | ||
| 176 | "ColumnNumber": 1, | ||
| 177 | "ColumnSpan": 1, | ||
| 178 | "DataBinderTypeName": "Sungero.Presentation.CommonDataBinders.DateTimeEditorToDateTimeBinder", | ||
| 179 | "ParentGuid": "7329a31f-6786-41d3-a5fc-cdd3fde0e7bf", | ||
| 180 | "PropertyGuid": "6519340c-d9ae-4a12-a6c9-819f964eda5d", | ||
| 181 | "RowNumber": 3, | ||
| 182 | "RowSpan": 1, | ||
| 183 | "Settings": [] | ||
| 184 | }, | ||
| 185 | { | ||
| 186 | "$type": "Sungero.Metadata.ControlMetadata, Sungero.Metadata", | ||
| 187 | "NameGuid": "93969610-fafe-4fc3-981f-8e0ba52bca9e", | ||
| 188 | "Name": "EntityTypeGUID", | ||
| 189 | "ColumnNumber": 1, | ||
| 190 | "ColumnSpan": 1, | ||
| 191 | "DataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 192 | "ParentGuid": "7329a31f-6786-41d3-a5fc-cdd3fde0e7bf", | ||
| 193 | "PropertyGuid": "dcba824d-c55b-4d07-92b3-ec2fc5bee318", | ||
| 194 | "RowNumber": 2, | ||
| 195 | "RowSpan": 1, | ||
| 196 | "Settings": [] | ||
| 197 | } | ||
| 198 | ] | ||
| 199 | } | ||
| 200 | ], | ||
| 201 | "HandledEvents": [ | ||
| 202 | "BeforeSaveServer" | ||
| 203 | ], | ||
| 204 | "HideFromCreationArea": true, | ||
| 205 | "HideFromNavigationEditorCreationArea": true, | ||
| 206 | "IconResourcesKeys": [], | ||
| 207 | "IsAutoCreated": true, | ||
| 208 | "IsStatusEnabled": true, | ||
| 209 | "OperationsClass": "", | ||
| 210 | "Overridden": [ | ||
| 211 | "IsStatusEnabled", | ||
| 212 | "IsAutoCreated", | ||
| 213 | "HideFromCreationArea", | ||
| 214 | "HideFromNavigationEditorCreationArea" | ||
| 215 | ], | ||
| 216 | "Properties": [ | ||
| 217 | { | ||
| 218 | "$type": "Sungero.Metadata.EnumPropertyMetadata, Sungero.Metadata", | ||
| 219 | "NameGuid": "1dcedc29-5140-4770-ac92-eabc212326a1", | ||
| 220 | "Name": "Status", | ||
| 221 | "IsAncestorMetadata": true, | ||
| 222 | "Overridden": [ | ||
| 223 | "IsShowedInList", | ||
| 224 | "IsVisibility", | ||
| 225 | "CanBeSearch", | ||
| 226 | "PreviousPropertyGuid" | ||
| 227 | ], | ||
| 228 | "PreviousPropertyGuid": "d7319199-3333-49cc-a7b9-8467617ccf20" | ||
| 229 | }, | ||
| 230 | { | ||
| 231 | "$type": "Sungero.Metadata.StringPropertyMetadata, Sungero.Metadata", | ||
| 232 | "NameGuid": "9ce7f50e-38ac-4ce4-96e6-631b6a0524ce", | ||
| 233 | "Name": "Name", | ||
| 234 | "Code": "Name", | ||
| 235 | "IsDisplayValue": true, | ||
| 236 | "IsEnabled": false, | ||
| 237 | "IsQuickSearchAllowed": true, | ||
| 238 | "IsRequired": true, | ||
| 239 | "IsUnique": true, | ||
| 240 | "ListDataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 241 | "PreviousPropertyGuid": "1dcedc29-5140-4770-ac92-eabc212326a1" | ||
| 242 | }, | ||
| 243 | { | ||
| 244 | "$type": "Sungero.Metadata.StringPropertyMetadata, Sungero.Metadata", | ||
| 245 | "NameGuid": "41103636-132e-49d5-91ea-020c1603cd16", | ||
| 246 | "Name": "GUID", | ||
| 247 | "Code": "GUID", | ||
| 248 | "IsEnabled": false, | ||
| 249 | "IsRequired": true, | ||
| 250 | "IsUnique": true, | ||
| 251 | "ListDataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 252 | "PreviousPropertyGuid": "9ce7f50e-38ac-4ce4-96e6-631b6a0524ce" | ||
| 253 | }, | ||
| 254 | { | ||
| 255 | "$type": "Sungero.Metadata.CollectionPropertyMetadata, Sungero.Metadata", | ||
| 256 | "NameGuid": "be1c954e-af9a-4fd0-b0c6-3f9bdcf93f11", | ||
| 257 | "Name": "Messages", | ||
| 258 | "Code": "DciProcessKin1", | ||
| 259 | "EntityGuid": "97a41c12-ed37-4790-afd4-529b70493184", | ||
| 260 | "IsEnabled": false, | ||
| 261 | "IsShowedInList": false, | ||
| 262 | "PreviousPropertyGuid": "93e6d0ee-f8cd-4418-ab62-fe087e38669b" | ||
| 263 | }, | ||
| 264 | { | ||
| 265 | "$type": "Sungero.Metadata.EnumPropertyMetadata, Sungero.Metadata", | ||
| 266 | "NameGuid": "a0d0f428-c7aa-47fb-95bb-3227ab2b48ed", | ||
| 267 | "Name": "ProcessType", | ||
| 268 | "Code": "ProcessType", | ||
| 269 | "DirectValues": [ | ||
| 270 | { | ||
| 271 | "NameGuid": "7581b95a-e6d8-4937-a3b2-4d9c5079d8ac", | ||
| 272 | "Name": "DataSync", | ||
| 273 | "Code": "DataSync" | ||
| 274 | }, | ||
| 275 | { | ||
| 276 | "NameGuid": "7ffd482a-9555-4b61-b220-b032071636e2", | ||
| 277 | "Name": "DocSync", | ||
| 278 | "Code": "DocSync" | ||
| 279 | }, | ||
| 280 | { | ||
| 281 | "NameGuid": "704fc64b-e29d-4b94-a639-cd683fffc2e0", | ||
| 282 | "Name": "Process", | ||
| 283 | "Code": "Process" | ||
| 284 | } | ||
| 285 | ], | ||
| 286 | "IsEnabled": false, | ||
| 287 | "IsRequired": true, | ||
| 288 | "ListDataBinderTypeName": "Sungero.Presentation.CommonDataBinders.DropDownEditorToEnumerationBinder", | ||
| 289 | "PreviousPropertyGuid": "be1c954e-af9a-4fd0-b0c6-3f9bdcf93f11" | ||
| 290 | }, | ||
| 291 | { | ||
| 292 | "$type": "Sungero.Metadata.StringPropertyMetadata, Sungero.Metadata", | ||
| 293 | "NameGuid": "93e6d0ee-f8cd-4418-ab62-fe087e38669b", | ||
| 294 | "Name": "Description", | ||
| 295 | "Code": "Description", | ||
| 296 | "Length": 1000, | ||
| 297 | "ListDataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 298 | "PreviousPropertyGuid": "41103636-132e-49d5-91ea-020c1603cd16" | ||
| 299 | }, | ||
| 300 | { | ||
| 301 | "$type": "Sungero.Metadata.TextPropertyMetadata, Sungero.Metadata", | ||
| 302 | "NameGuid": "4bdb3aae-6cc0-41de-8a82-5f548a5d9d6a", | ||
| 303 | "Name": "Note", | ||
| 304 | "Code": "Note", | ||
| 305 | "ListDataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToTextBinder", | ||
| 306 | "PreviousPropertyGuid": "a0d0f428-c7aa-47fb-95bb-3227ab2b48ed" | ||
| 307 | }, | ||
| 308 | { | ||
| 309 | "$type": "Sungero.Metadata.StringPropertyMetadata, Sungero.Metadata", | ||
| 310 | "NameGuid": "dcba824d-c55b-4d07-92b3-ec2fc5bee318", | ||
| 311 | "Name": "EntityTypeGUID", | ||
| 312 | "Code": "EntityTypeGUID", | ||
| 313 | "IsEnabled": false, | ||
| 314 | "IsRequired": true, | ||
| 315 | "ListDataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 316 | "PreviousPropertyGuid": "4bdb3aae-6cc0-41de-8a82-5f548a5d9d6a" | ||
| 317 | }, | ||
| 318 | { | ||
| 319 | "$type": "Sungero.Metadata.DateTimePropertyMetadata, Sungero.Metadata", | ||
| 320 | "NameGuid": "6519340c-d9ae-4a12-a6c9-819f964eda5d", | ||
| 321 | "Name": "LastOutSyncDate", | ||
| 322 | "Code": "LastOutSyncDat", | ||
| 323 | "DateTimeFormat": "DateTime", | ||
| 324 | "IsRequired": true, | ||
| 325 | "ListDataBinderTypeName": "Sungero.Presentation.CommonDataBinders.DateTimeEditorToDateTimeBinder", | ||
| 326 | "PreviousPropertyGuid": "dcba824d-c55b-4d07-92b3-ec2fc5bee318" | ||
| 327 | } | ||
| 328 | ], | ||
| 329 | "PublicConstants": [ | ||
| 330 | { | ||
| 331 | "Name": "Name", | ||
| 332 | "ParentClasses": [ | ||
| 333 | "DciProcessKind", | ||
| 334 | "DCICheckLinkProcess" | ||
| 335 | ], | ||
| 336 | "TypeName": "System.String", | ||
| 337 | "Value": "\"DCICheckLink\"" | ||
| 338 | }, | ||
| 339 | { | ||
| 340 | "Name": "Name", | ||
| 341 | "ParentClasses": [ | ||
| 342 | "DciProcessKind", | ||
| 343 | "DCICheckLinkProcess", | ||
| 344 | "PingMessage" | ||
| 345 | ], | ||
| 346 | "TypeName": "System.String", | ||
| 347 | "Value": "\"Ping\"" | ||
| 348 | }, | ||
| 349 | { | ||
| 350 | "Name": "Name", | ||
| 351 | "ParentClasses": [ | ||
| 352 | "DciProcessKind", | ||
| 353 | "DCICheckLinkProcess", | ||
| 354 | "PongMessage" | ||
| 355 | ], | ||
| 356 | "TypeName": "System.String", | ||
| 357 | "Value": "\"Pong\"" | ||
| 358 | }, | ||
| 359 | { | ||
| 360 | "Name": "RecordChanges", | ||
| 361 | "ParentClasses": [ | ||
| 362 | "DciProcessKind", | ||
| 363 | "DefaultDciMessageName" | ||
| 364 | ], | ||
| 365 | "TypeName": "System.String", | ||
| 366 | "Value": "\"SynchronizeRecordChanges\"" | ||
| 367 | }, | ||
| 368 | { | ||
| 369 | "Name": "RecordDeletion", | ||
| 370 | "ParentClasses": [ | ||
| 371 | "DciProcessKind", | ||
| 372 | "DefaultDciMessageName" | ||
| 373 | ], | ||
| 374 | "TypeName": "System.String", | ||
| 375 | "Value": "\"SynchronizeRecordDeletion\"" | ||
| 376 | }, | ||
| 377 | { | ||
| 378 | "Name": "RecordGUID", | ||
| 379 | "ParentClasses": [ | ||
| 380 | "DciProcessKind", | ||
| 381 | "DCICheckLinkProcess" | ||
| 382 | ], | ||
| 383 | "TypeName": "System.Guid", | ||
| 384 | "Value": "new System.Guid(\"FF629668-7663-406C-A89E-D57C0F0F4D0C\")" | ||
| 385 | }, | ||
| 386 | { | ||
| 387 | "Name": "RowGUID", | ||
| 388 | "ParentClasses": [ | ||
| 389 | "DciProcessKind", | ||
| 390 | "DCICheckLinkProcess", | ||
| 391 | "PingMessage" | ||
| 392 | ], | ||
| 393 | "TypeName": "System.Guid", | ||
| 394 | "Value": "new System.Guid(\"7A39F16B-7F3E-4D54-8807-947371282914\")" | ||
| 395 | }, | ||
| 396 | { | ||
| 397 | "Name": "RowGUID", | ||
| 398 | "ParentClasses": [ | ||
| 399 | "DciProcessKind", | ||
| 400 | "DCICheckLinkProcess", | ||
| 401 | "PongMessage" | ||
| 402 | ], | ||
| 403 | "TypeName": "System.Guid", | ||
| 404 | "Value": "new System.Guid(\"72EC2A7B-5CAF-464A-A89E-AA9D3A40AF95\")" | ||
| 405 | } | ||
| 406 | ], | ||
| 407 | "PublicFunctions": [ | ||
| 408 | { | ||
| 409 | "Name": "CheckProcessKindExists", | ||
| 410 | "IsRemote": true, | ||
| 411 | "Parameters": [ | ||
| 412 | { | ||
| 413 | "Name": "processName", | ||
| 414 | "ParameterType": "global::System.String", | ||
| 415 | "ParameterTypeFullName": "System.String" | ||
| 416 | }, | ||
| 417 | { | ||
| 418 | "Name": "messageName", | ||
| 419 | "ParameterType": "global::System.String", | ||
| 420 | "ParameterTypeFullName": "System.String" | ||
| 421 | } | ||
| 422 | ], | ||
| 423 | "Placement": "Shared", | ||
| 424 | "ReturnType": "global::System.String", | ||
| 425 | "ReturnTypeFullName": "System.String" | ||
| 426 | }, | ||
| 427 | { | ||
| 428 | "Name": "GetProcessKindByName", | ||
| 429 | "IsRemote": true, | ||
| 430 | "Parameters": [ | ||
| 431 | { | ||
| 432 | "Name": "processName", | ||
| 433 | "ParameterType": "global::System.String", | ||
| 434 | "ParameterTypeFullName": "System.String" | ||
| 435 | } | ||
| 436 | ], | ||
| 437 | "Placement": "Shared", | ||
| 438 | "ReturnType": "global::DirRX.DciCore.IDciProcessKind", | ||
| 439 | "ReturnTypeFullName": "DirRX.DciCore.IDciProcessKind, Sungero.Domain.Interfaces" | ||
| 440 | } | ||
| 441 | ], | ||
| 442 | "PublicStructures": [], | ||
| 443 | "ResourcesKeys": [ | ||
| 444 | "NotFoundProcessKindByProcessName", | ||
| 445 | "NotFoundMessageInProcessKind", | ||
| 446 | "NotValidDciName", | ||
| 447 | "IncorrectProcessName", | ||
| 448 | "IncorrectMessageName", | ||
| 449 | "NotUniqueMessageName" | ||
| 450 | ], | ||
| 451 | "RibbonCardMetadata": { | ||
| 452 | "NameGuid": "3deae715-fa8f-4776-8f98-e287417462bb", | ||
| 453 | "Name": "RibbonCard", | ||
| 454 | "Categories": [], | ||
| 455 | "Elements": [], | ||
| 456 | "Groups": [], | ||
| 457 | "IsAncestorMetadata": true, | ||
| 458 | "Pages": [], | ||
| 459 | "RibbonKind": "Card" | ||
| 460 | }, | ||
| 461 | "RibbonCollectionMetadata": { | ||
| 462 | "NameGuid": "34141cb0-eeb0-49d8-8b86-6ce14ac8b481", | ||
| 463 | "Name": "RibbonCollection", | ||
| 464 | "Categories": [], | ||
| 465 | "Elements": [], | ||
| 466 | "Groups": [], | ||
| 467 | "IsAncestorMetadata": true, | ||
| 468 | "Pages": [] | ||
| 469 | }, | ||
| 470 | "Versions": [ | ||
| 471 | { | ||
| 472 | "Type": "EntityMetadata", | ||
| 473 | "Number": 11 | ||
| 474 | } | ||
| 475 | ] | ||
| 476 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | <data name="NotFoundProcessKindByProcessName" xml:space="preserve"> | ||
| 121 | <value>В справочнике "Виды межсистемных процессов" не найдена действующая запись для процесса с именем {0}. Выполните инициализацию решения, проверьте что запись действующая.</value> | ||
| 122 | </data> | ||
| 123 | <data name="NotFoundMessageInProcessKind" xml:space="preserve"> | ||
| 124 | <value>В справочнике "Виды межсистемных процессов" для процесса {0} не найдено сообщение с именем {1}. Выполните инициализацию решения.</value> | ||
| 125 | </data> | ||
| 126 | <data name="NotValidDciName" xml:space="preserve"> | ||
| 127 | <value>Некорректное имя {0}. Имя должно содержать только буквы (латиница, кириллица), цифры и символ подчеркивания. Имя не должно начинаться с цифры.</value> | ||
| 128 | </data> | ||
| 129 | <data name="IncorrectProcessName" xml:space="preserve"> | ||
| 130 | <value>Измените имя вида процесса. {0}</value> | ||
| 131 | </data> | ||
| 132 | <data name="IncorrectMessageName" xml:space="preserve"> | ||
| 133 | <value>Измените имя сообщения. {0}</value> | ||
| 134 | </data> | ||
| 135 | <data name="NotUniqueMessageName" xml:space="preserve"> | ||
| 136 | <value>Имя сообщения "{0}" должно быть уникальным в разрезе процесса "{1}".</value> | ||
| 137 | </data> | ||
| 138 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | <data name="NotFoundProcessKindByProcessName" xml:space="preserve"> | ||
| 121 | <value>В справочнике "Виды межсистемных процессов" не найдена действующая запись для процесса с именем {0}. Выполните инициализацию решения, проверьте что запись действующая.</value> | ||
| 122 | </data> | ||
| 123 | <data name="NotFoundMessageInProcessKind" xml:space="preserve"> | ||
| 124 | <value>В справочнике "Виды межсистемных процессов" для процесса {0} не найдено сообщение с именем {1}. Выполните инициализацию решения.</value> | ||
| 125 | </data> | ||
| 126 | <data name="NotValidDciName" xml:space="preserve"> | ||
| 127 | <value>Некорректное имя {0}. Имя должно содержать только буквы (латиница, кириллица), цифры и символ подчеркивания. Имя не должно начинаться с цифры.</value> | ||
| 128 | </data> | ||
| 129 | <data name="IncorrectProcessName" xml:space="preserve"> | ||
| 130 | <value>Измените имя вида процесса. {0}</value> | ||
| 131 | </data> | ||
| 132 | <data name="IncorrectMessageName" xml:space="preserve"> | ||
| 133 | <value>Измените имя сообщения. {0}</value> | ||
| 134 | </data> | ||
| 135 | <data name="NotUniqueMessageName" xml:space="preserve"> | ||
| 136 | <value>Имя сообщения "{0}" должно быть уникальным в разрезе процесса "{1}".</value> | ||
| 137 | </data> | ||
| 138 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using Sungero.Core; | ||
| 3 | |||
| 4 | namespace DirRX.DciCore.Constants | ||
| 5 | { | ||
| 6 | public static class DciProcessKind | ||
| 7 | { | ||
| 8 | |||
| 9 | /// <summary> | ||
| 10 | /// Стандартные имена сообщений для синхронизации записей справочника через DCI. | ||
| 11 | /// </summary> | ||
| 12 | public static class DefaultDciMessageName | ||
| 13 | { | ||
| 14 | [Public] | ||
| 15 | public const string RecordChanges = "SynchronizeRecordChanges"; | ||
| 16 | [Public] | ||
| 17 | public const string RecordDeletion = "SynchronizeRecordDeletion"; | ||
| 18 | } | ||
| 19 | |||
| 20 | #region Процесс DCICheckLink. | ||
| 21 | |||
| 22 | /// <summary> | ||
| 23 | /// Значения полей для записи справочника. | ||
| 24 | /// </summary> | ||
| 25 | public static class DCICheckLinkProcess | ||
| 26 | { | ||
| 27 | [Public] | ||
| 28 | public static readonly Guid RecordGUID = Guid.Parse("FF629668-7663-406C-A89E-D57C0F0F4D0C"); | ||
| 29 | [Public] | ||
| 30 | public const string Name = "DCICheckLink"; | ||
| 31 | public const string Description = "Проверка связи между системами"; | ||
| 32 | public const string Note = "Отправка тестового сообщения. Используется на обложке решения."; | ||
| 33 | |||
| 34 | public static class PingMessage | ||
| 35 | { | ||
| 36 | [Public] | ||
| 37 | public static readonly Guid RowGUID = Guid.Parse("7A39F16B-7F3E-4D54-8807-947371282914"); | ||
| 38 | [Public] | ||
| 39 | public const string Name = "Ping"; | ||
| 40 | |||
| 41 | public const string Note = "Сообщение с тестовыми данными"; | ||
| 42 | } | ||
| 43 | |||
| 44 | public static class PongMessage | ||
| 45 | { | ||
| 46 | [Public] | ||
| 47 | public static readonly Guid RowGUID = Guid.Parse("72EC2A7B-5CAF-464A-A89E-AA9D3A40AF95"); | ||
| 48 | [Public] | ||
| 49 | public const string Name = "Pong"; | ||
| 50 | |||
| 51 | public const string Note = "Отбойник о получении сообщения"; | ||
| 52 | } | ||
| 53 | } | ||
| 54 | #endregion | ||
| 55 | |||
| 56 | } | ||
| 57 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | using DirRX.DciCore.DciProcessKind; | ||
| 7 | |||
| 8 | namespace DirRX.DciCore | ||
| 9 | { | ||
| 10 | partial class DciProcessKindSharedHandlers | ||
| 11 | { | ||
| 12 | |||
| 13 | } | ||
| 14 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | using DirRX.DciCore.DciProcessKind; | ||
| 7 | |||
| 8 | namespace DirRX.DciCore.Shared | ||
| 9 | { | ||
| 10 | partial class DciProcessKindFunctions | ||
| 11 | { | ||
| 12 | |||
| 13 | } | ||
| 14 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | <data name="Property_Name" xml:space="preserve"> | ||
| 121 | <value>Name</value> | ||
| 122 | </data> | ||
| 123 | <data name="DisplayName" xml:space="preserve"> | ||
| 124 | <value>Вид межсистемного процесса</value> | ||
| 125 | </data> | ||
| 126 | <data name="AccusativeDisplayName" xml:space="preserve"> | ||
| 127 | <value>Виды межсистемных процессов</value> | ||
| 128 | </data> | ||
| 129 | <data name="CollectionDisplayName" xml:space="preserve"> | ||
| 130 | <value>Виды межсистемных процессов</value> | ||
| 131 | </data> | ||
| 132 | <data name="Property_GUID" xml:space="preserve"> | ||
| 133 | <value>GUID записи</value> | ||
| 134 | </data> | ||
| 135 | <data name="Property_Messages" xml:space="preserve"> | ||
| 136 | <value>Сообщения</value> | ||
| 137 | </data> | ||
| 138 | <data name="Property_ProcessType" xml:space="preserve"> | ||
| 139 | <value>Тип процесса</value> | ||
| 140 | </data> | ||
| 141 | <data name="Enum_ProcessType_DataSync" xml:space="preserve"> | ||
| 142 | <value>Синхронизация справочника</value> | ||
| 143 | </data> | ||
| 144 | <data name="Enum_ProcessType_DocSync" xml:space="preserve"> | ||
| 145 | <value>Синхронизация документа</value> | ||
| 146 | </data> | ||
| 147 | <data name="Enum_ProcessType_Process" xml:space="preserve"> | ||
| 148 | <value>Сквозной бизнес-процесс</value> | ||
| 149 | </data> | ||
| 150 | <data name="ControlGroup_7329a31f678641d3a5fccdd3fde0e7bf" xml:space="preserve"> | ||
| 151 | <value /> | ||
| 152 | </data> | ||
| 153 | <data name="ControlGroup_3c2997165b104c75b13049533d077c3d" xml:space="preserve"> | ||
| 154 | <value>Примечания</value> | ||
| 155 | </data> | ||
| 156 | <data name="Property_Description" xml:space="preserve"> | ||
| 157 | <value>Описание</value> | ||
| 158 | </data> | ||
| 159 | <data name="Property_Note" xml:space="preserve"> | ||
| 160 | <value>Примечание</value> | ||
| 161 | </data> | ||
| 162 | <data name="ControlGroup_c424d5cc88b44f81a951b57d2eabb9da" xml:space="preserve"> | ||
| 163 | <value /> | ||
| 164 | </data> | ||
| 165 | <data name="ControlGroup_462ec2b8adee4c71930c660c2eeb52c8" xml:space="preserve"> | ||
| 166 | <value>Сообщения</value> | ||
| 167 | </data> | ||
| 168 | <data name="Property_EntityTypeGUID" xml:space="preserve"> | ||
| 169 | <value>GUID типа сущности</value> | ||
| 170 | </data> | ||
| 171 | <data name="Property_LastOutSyncDate" xml:space="preserve"> | ||
| 172 | <value>Дата последней отправки</value> | ||
| 173 | </data> | ||
| 174 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | <data name="Property_Name" xml:space="preserve"> | ||
| 121 | <value>Имя</value> | ||
| 122 | </data> | ||
| 123 | <data name="DisplayName" xml:space="preserve"> | ||
| 124 | <value>Вид межсистемного процесса</value> | ||
| 125 | </data> | ||
| 126 | <data name="AccusativeDisplayName" xml:space="preserve"> | ||
| 127 | <value>Виды межсистемных процессов</value> | ||
| 128 | </data> | ||
| 129 | <data name="CollectionDisplayName" xml:space="preserve"> | ||
| 130 | <value>Виды межсистемных процессов</value> | ||
| 131 | </data> | ||
| 132 | <data name="Property_GUID" xml:space="preserve"> | ||
| 133 | <value>GUID записи</value> | ||
| 134 | </data> | ||
| 135 | <data name="Property_ProcessType" xml:space="preserve"> | ||
| 136 | <value>Тип процесса</value> | ||
| 137 | </data> | ||
| 138 | <data name="Enum_ProcessType_DataSync" xml:space="preserve"> | ||
| 139 | <value>Синхронизация справочника</value> | ||
| 140 | </data> | ||
| 141 | <data name="Enum_ProcessType_Process" xml:space="preserve"> | ||
| 142 | <value>Сквозной бизнес-процесс</value> | ||
| 143 | </data> | ||
| 144 | <data name="Enum_ProcessType_DocSync" xml:space="preserve"> | ||
| 145 | <value>Синхронизация документа</value> | ||
| 146 | </data> | ||
| 147 | <data name="ControlGroup_3c2997165b104c75b13049533d077c3d" xml:space="preserve"> | ||
| 148 | <value>Примечания</value> | ||
| 149 | </data> | ||
| 150 | <data name="Property_Description" xml:space="preserve"> | ||
| 151 | <value>Описание</value> | ||
| 152 | </data> | ||
| 153 | <data name="Property_Messages" xml:space="preserve"> | ||
| 154 | <value>Сообщения</value> | ||
| 155 | </data> | ||
| 156 | <data name="Property_Note" xml:space="preserve"> | ||
| 157 | <value>Примечание</value> | ||
| 158 | </data> | ||
| 159 | <data name="ControlGroup_462ec2b8adee4c71930c660c2eeb52c8" xml:space="preserve"> | ||
| 160 | <value>Сообщения</value> | ||
| 161 | </data> | ||
| 162 | <data name="Property_EntityTypeGUID" xml:space="preserve"> | ||
| 163 | <value>GUID типа сущности</value> | ||
| 164 | </data> | ||
| 165 | <data name="Property_LastOutSyncDate" xml:space="preserve"> | ||
| 166 | <value>Дата последней отправки</value> | ||
| 167 | </data> | ||
| 168 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | { | ||
| 2 | "$type": "Sungero.Metadata.EntityMetadata, Sungero.Metadata", | ||
| 3 | "NameGuid": "97a41c12-ed37-4790-afd4-529b70493184", | ||
| 4 | "Name": "DciProcessKindMessages", | ||
| 5 | "AccessRightsMode": "NoRight", | ||
| 6 | "BaseGuid": "a3d38bf5-0414-41f6-bb33-a4621d2e5a60", | ||
| 7 | "CanBeNavigationPropertyType": true, | ||
| 8 | "Code": "DciProcessKin1", | ||
| 9 | "ExtraSearchProperties": [], | ||
| 10 | "IsChildEntity": true, | ||
| 11 | "Properties": [ | ||
| 12 | { | ||
| 13 | "$type": "Sungero.Metadata.NavigationPropertyMetadata, Sungero.Metadata", | ||
| 14 | "NameGuid": "298ffbfe-b9e8-49b2-9f67-50503d28bfaa", | ||
| 15 | "Name": "DciProcessKind", | ||
| 16 | "CanBeSearch": false, | ||
| 17 | "Code": "DciProcessKind", | ||
| 18 | "EntityGuid": "b8fb59dc-559f-40b8-8ad3-2df642ff71d5", | ||
| 19 | "IsReferenceToRootEntity": true, | ||
| 20 | "IsShowedInList": false | ||
| 21 | }, | ||
| 22 | { | ||
| 23 | "$type": "Sungero.Metadata.StringPropertyMetadata, Sungero.Metadata", | ||
| 24 | "NameGuid": "a041d7a7-df7b-4973-8edf-c09e9b64d46a", | ||
| 25 | "Name": "Name", | ||
| 26 | "CanBeSearch": false, | ||
| 27 | "Code": "Name", | ||
| 28 | "IsEnabled": false, | ||
| 29 | "IsRequired": true, | ||
| 30 | "ListDataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 31 | "PreviousPropertyGuid": "298ffbfe-b9e8-49b2-9f67-50503d28bfaa" | ||
| 32 | }, | ||
| 33 | { | ||
| 34 | "$type": "Sungero.Metadata.StringPropertyMetadata, Sungero.Metadata", | ||
| 35 | "NameGuid": "72f6b57a-e893-430d-855b-1658630682bc", | ||
| 36 | "Name": "Note", | ||
| 37 | "CanBeSearch": false, | ||
| 38 | "Code": "Note", | ||
| 39 | "Length": 1000, | ||
| 40 | "ListDataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 41 | "PreviousPropertyGuid": "a041d7a7-df7b-4973-8edf-c09e9b64d46a" | ||
| 42 | }, | ||
| 43 | { | ||
| 44 | "$type": "Sungero.Metadata.StringPropertyMetadata, Sungero.Metadata", | ||
| 45 | "NameGuid": "43b48378-c48c-4631-b22c-c8ccbdae3bf4", | ||
| 46 | "Name": "RowGUID", | ||
| 47 | "CanBeSearch": false, | ||
| 48 | "Code": "RowGUID", | ||
| 49 | "IsEnabled": false, | ||
| 50 | "IsRequired": true, | ||
| 51 | "IsUnique": true, | ||
| 52 | "IsVisibility": false, | ||
| 53 | "ListDataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 54 | "PreviousPropertyGuid": "72f6b57a-e893-430d-855b-1658630682bc" | ||
| 55 | } | ||
| 56 | ], | ||
| 57 | "PublicStructures": [], | ||
| 58 | "RibbonCardMetadata": { | ||
| 59 | "NameGuid": "99f6c7c3-a806-41f5-bdae-9069316f5626", | ||
| 60 | "Name": "RibbonCard", | ||
| 61 | "Categories": [], | ||
| 62 | "Elements": [], | ||
| 63 | "Groups": [], | ||
| 64 | "IsAncestorMetadata": true, | ||
| 65 | "Pages": [], | ||
| 66 | "RibbonKind": "Card" | ||
| 67 | }, | ||
| 68 | "RibbonCollectionMetadata": { | ||
| 69 | "NameGuid": "53c4e4be-6d89-4fc2-8003-44582166fc12", | ||
| 70 | "Name": "RibbonCollection", | ||
| 71 | "Categories": [], | ||
| 72 | "Elements": [], | ||
| 73 | "Groups": [], | ||
| 74 | "IsAncestorMetadata": true, | ||
| 75 | "Pages": [] | ||
| 76 | }, | ||
| 77 | "Versions": [ | ||
| 78 | { | ||
| 79 | "Type": "EntityMetadata", | ||
| 80 | "Number": 11 | ||
| 81 | } | ||
| 82 | ] | ||
| 83 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
DirRX.DciCore/DirRX.DciCore.Shared/DciProcessKind@Messages/DciProcessKindMessages.ru.resx
0 → 100644
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
DirRX.DciCore/DirRX.DciCore.Shared/DciProcessKind@Messages/DciProcessKindMessagesSystem.resx
0 → 100644
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | <data name="Property_Name" xml:space="preserve"> | ||
| 121 | <value>Имя сообщения</value> | ||
| 122 | </data> | ||
| 123 | <data name="Property_Note" xml:space="preserve"> | ||
| 124 | <value>Примечание</value> | ||
| 125 | </data> | ||
| 126 | <data name="Property_RowGUID" xml:space="preserve"> | ||
| 127 | <value>GUID строки</value> | ||
| 128 | </data> | ||
| 129 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
DirRX.DciCore/DirRX.DciCore.Shared/DciProcessKind@Messages/DciProcessKindMessagesSystem.ru.resx
0 → 100644
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | <data name="Property_Name" xml:space="preserve"> | ||
| 121 | <value>Имя сообщения</value> | ||
| 122 | </data> | ||
| 123 | <data name="Property_Note" xml:space="preserve"> | ||
| 124 | <value>Примечание</value> | ||
| 125 | </data> | ||
| 126 | <data name="Property_RowGUID" xml:space="preserve"> | ||
| 127 | <value>GUID строки</value> | ||
| 128 | </data> | ||
| 129 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | { | ||
| 2 | "$type": "Sungero.Metadata.EntityMetadata, Sungero.Metadata", | ||
| 3 | "NameGuid": "0a291244-941b-4006-8497-06ecd1fabca4", | ||
| 4 | "Name": "DciSetting", | ||
| 5 | "BaseGuid": "04581d26-0780-4cfd-b3cd-c2cafc5798b0", | ||
| 6 | "CanBeNavigationPropertyType": true, | ||
| 7 | "Code": "DciSetting", | ||
| 8 | "CreationAreaMetadata": { | ||
| 9 | "NameGuid": "f7766750-eee2-4fcd-8003-5c06a90d1f44", | ||
| 10 | "Name": "CreationArea", | ||
| 11 | "Buttons": [], | ||
| 12 | "IsAncestorMetadata": true | ||
| 13 | }, | ||
| 14 | "ExtraSearchProperties": [], | ||
| 15 | "FilterPanel": { | ||
| 16 | "NameGuid": "b0125fbd-3b91-4dbb-914a-689276216404", | ||
| 17 | "Name": "FilterPanel", | ||
| 18 | "Controls": [], | ||
| 19 | "IsAncestorMetadata": true | ||
| 20 | }, | ||
| 21 | "Forms": [ | ||
| 22 | { | ||
| 23 | "$type": "Sungero.Metadata.StandaloneFormMetadata, Sungero.Metadata", | ||
| 24 | "NameGuid": "f345093b-e6c2-4742-85eb-bc661cd50bee", | ||
| 25 | "Name": "Card", | ||
| 26 | "Controls": [ | ||
| 27 | { | ||
| 28 | "$type": "Sungero.Metadata.ControlGroupMetadata, Sungero.Metadata", | ||
| 29 | "NameGuid": "be475439-282f-4f2d-b313-5efcff782627", | ||
| 30 | "Name": "ControlGroup" | ||
| 31 | }, | ||
| 32 | { | ||
| 33 | "$type": "Sungero.Metadata.ControlMetadata, Sungero.Metadata", | ||
| 34 | "NameGuid": "662ffa75-a86a-4ed0-98f8-a0ee5d7d5b63", | ||
| 35 | "Name": "Control", | ||
| 36 | "ColumnNumber": 0, | ||
| 37 | "ColumnSpan": 1, | ||
| 38 | "DataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 39 | "ParentGuid": "be475439-282f-4f2d-b313-5efcff782627", | ||
| 40 | "PropertyGuid": "f9c79369-67c9-44e3-9f14-48aaec8cf3cd", | ||
| 41 | "RowNumber": 0, | ||
| 42 | "RowSpan": 1, | ||
| 43 | "Settings": [] | ||
| 44 | }, | ||
| 45 | { | ||
| 46 | "$type": "Sungero.Metadata.ControlMetadata, Sungero.Metadata", | ||
| 47 | "NameGuid": "d2fb7766-a0ad-4991-b508-9c86ac60d5df", | ||
| 48 | "Name": "AdapterServiceUrl", | ||
| 49 | "ColumnNumber": 0, | ||
| 50 | "ColumnSpan": 1, | ||
| 51 | "DataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 52 | "ParentGuid": "be475439-282f-4f2d-b313-5efcff782627", | ||
| 53 | "PropertyGuid": "e3ba2ddd-ad59-4ace-9688-67417dfb265f", | ||
| 54 | "RowNumber": 1, | ||
| 55 | "RowSpan": 1, | ||
| 56 | "Settings": [] | ||
| 57 | }, | ||
| 58 | { | ||
| 59 | "$type": "Sungero.Metadata.ControlMetadata, Sungero.Metadata", | ||
| 60 | "NameGuid": "2ef7e302-252c-4213-b34a-8c82631497ec", | ||
| 61 | "Name": "AdapterSiteUrl", | ||
| 62 | "ColumnNumber": 0, | ||
| 63 | "ColumnSpan": 1, | ||
| 64 | "DataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 65 | "ParentGuid": "be475439-282f-4f2d-b313-5efcff782627", | ||
| 66 | "PropertyGuid": "f9c3fb20-883c-4ba7-984b-2224755a3357", | ||
| 67 | "RowNumber": 2, | ||
| 68 | "RowSpan": 1, | ||
| 69 | "Settings": [] | ||
| 70 | }, | ||
| 71 | { | ||
| 72 | "$type": "Sungero.Metadata.ControlMetadata, Sungero.Metadata", | ||
| 73 | "NameGuid": "a434e717-94c3-4087-81c4-0f073cd77490", | ||
| 74 | "Name": "ExchangeFolder", | ||
| 75 | "ColumnNumber": 0, | ||
| 76 | "ColumnSpan": 1, | ||
| 77 | "DataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 78 | "ParentGuid": "be475439-282f-4f2d-b313-5efcff782627", | ||
| 79 | "PropertyGuid": "7c6189ac-312c-4db9-9a12-e616c925ad8b", | ||
| 80 | "RowNumber": 3, | ||
| 81 | "RowSpan": 1, | ||
| 82 | "Settings": [] | ||
| 83 | }, | ||
| 84 | { | ||
| 85 | "$type": "Sungero.Metadata.ControlMetadata, Sungero.Metadata", | ||
| 86 | "NameGuid": "f6c42c4c-6cf9-4f56-a9a6-388d6f2ae07f", | ||
| 87 | "Name": "ExternalSystemID", | ||
| 88 | "ColumnNumber": 0, | ||
| 89 | "ColumnSpan": 1, | ||
| 90 | "DataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 91 | "ParentGuid": "be475439-282f-4f2d-b313-5efcff782627", | ||
| 92 | "PropertyGuid": "7a5df22a-5e04-408b-a8c3-907e030a2b9e", | ||
| 93 | "RowNumber": 4, | ||
| 94 | "RowSpan": 1, | ||
| 95 | "Settings": [] | ||
| 96 | } | ||
| 97 | ] | ||
| 98 | } | ||
| 99 | ], | ||
| 100 | "HideFromCreationArea": true, | ||
| 101 | "HideFromNavigationEditorCreationArea": true, | ||
| 102 | "IconResourcesKeys": [], | ||
| 103 | "IsAutoCreated": true, | ||
| 104 | "IsVisible": false, | ||
| 105 | "OperationsClass": "", | ||
| 106 | "Overridden": [ | ||
| 107 | "HideFromCreationArea", | ||
| 108 | "HideFromNavigationEditorCreationArea", | ||
| 109 | "IsAutoCreated", | ||
| 110 | "IsVisible" | ||
| 111 | ], | ||
| 112 | "Properties": [ | ||
| 113 | { | ||
| 114 | "$type": "Sungero.Metadata.StringPropertyMetadata, Sungero.Metadata", | ||
| 115 | "NameGuid": "f9c79369-67c9-44e3-9f14-48aaec8cf3cd", | ||
| 116 | "Name": "SystemID", | ||
| 117 | "Code": "SystemID", | ||
| 118 | "IsDisplayValue": true, | ||
| 119 | "IsQuickSearchAllowed": true, | ||
| 120 | "IsRequired": true, | ||
| 121 | "ListDataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 122 | "PreviousPropertyGuid": "7a5df22a-5e04-408b-a8c3-907e030a2b9e" | ||
| 123 | }, | ||
| 124 | { | ||
| 125 | "$type": "Sungero.Metadata.StringPropertyMetadata, Sungero.Metadata", | ||
| 126 | "NameGuid": "e3ba2ddd-ad59-4ace-9688-67417dfb265f", | ||
| 127 | "Name": "AdapterServiceUrl", | ||
| 128 | "Code": "AdapterService", | ||
| 129 | "IsRequired": true, | ||
| 130 | "ListDataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 131 | "PreviousPropertyGuid": "1dcedc29-5140-4770-ac92-eabc212326a1" | ||
| 132 | }, | ||
| 133 | { | ||
| 134 | "$type": "Sungero.Metadata.StringPropertyMetadata, Sungero.Metadata", | ||
| 135 | "NameGuid": "f9c3fb20-883c-4ba7-984b-2224755a3357", | ||
| 136 | "Name": "AdapterSiteUrl", | ||
| 137 | "Code": "AdapterSiteUrl", | ||
| 138 | "IsRequired": true, | ||
| 139 | "ListDataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 140 | "PreviousPropertyGuid": "e3ba2ddd-ad59-4ace-9688-67417dfb265f" | ||
| 141 | }, | ||
| 142 | { | ||
| 143 | "$type": "Sungero.Metadata.StringPropertyMetadata, Sungero.Metadata", | ||
| 144 | "NameGuid": "7c6189ac-312c-4db9-9a12-e616c925ad8b", | ||
| 145 | "Name": "ExchangeFolder", | ||
| 146 | "Code": "ExchangeFolder", | ||
| 147 | "IsRequired": true, | ||
| 148 | "ListDataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 149 | "PreviousPropertyGuid": "f9c3fb20-883c-4ba7-984b-2224755a3357" | ||
| 150 | }, | ||
| 151 | { | ||
| 152 | "$type": "Sungero.Metadata.StringPropertyMetadata, Sungero.Metadata", | ||
| 153 | "NameGuid": "7a5df22a-5e04-408b-a8c3-907e030a2b9e", | ||
| 154 | "Name": "ExternalSystemID", | ||
| 155 | "Code": "ExternalSystem", | ||
| 156 | "IsRequired": true, | ||
| 157 | "ListDataBinderTypeName": "Sungero.Presentation.CommonDataBinders.StringEditorToStringBinder", | ||
| 158 | "PreviousPropertyGuid": "7c6189ac-312c-4db9-9a12-e616c925ad8b" | ||
| 159 | } | ||
| 160 | ], | ||
| 161 | "PublicFunctions": [ | ||
| 162 | { | ||
| 163 | "Name": "CreateDciSetting", | ||
| 164 | "IsRemote": true, | ||
| 165 | "Placement": "Shared", | ||
| 166 | "ReturnType": "global::DirRX.DciCore.IDciSetting", | ||
| 167 | "ReturnTypeFullName": "DirRX.DciCore.IDciSetting, Sungero.Domain.Interfaces" | ||
| 168 | }, | ||
| 169 | { | ||
| 170 | "Name": "GetDciSettings", | ||
| 171 | "IsRemote": true, | ||
| 172 | "Placement": "Shared", | ||
| 173 | "ReturnType": "global::DirRX.DciCore.IDciSetting", | ||
| 174 | "ReturnTypeFullName": "DirRX.DciCore.IDciSetting, Sungero.Domain.Interfaces" | ||
| 175 | } | ||
| 176 | ], | ||
| 177 | "PublicStructures": [], | ||
| 178 | "ResourcesKeys": [], | ||
| 179 | "RibbonCardMetadata": { | ||
| 180 | "NameGuid": "c1dff1ab-43e0-497c-85fb-e8027625d8ef", | ||
| 181 | "Name": "RibbonCard", | ||
| 182 | "Categories": [], | ||
| 183 | "Elements": [], | ||
| 184 | "Groups": [], | ||
| 185 | "IsAncestorMetadata": true, | ||
| 186 | "Pages": [], | ||
| 187 | "RibbonKind": "Card" | ||
| 188 | }, | ||
| 189 | "RibbonCollectionMetadata": { | ||
| 190 | "NameGuid": "4a2db3f3-683e-470a-a1b3-ead1b910d269", | ||
| 191 | "Name": "RibbonCollection", | ||
| 192 | "Categories": [], | ||
| 193 | "Elements": [], | ||
| 194 | "Groups": [], | ||
| 195 | "IsAncestorMetadata": true, | ||
| 196 | "Pages": [] | ||
| 197 | }, | ||
| 198 | "Versions": [ | ||
| 199 | { | ||
| 200 | "Type": "EntityMetadata", | ||
| 201 | "Number": 11 | ||
| 202 | } | ||
| 203 | ] | ||
| 204 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | using DirRX.DciCore.DciSetting; | ||
| 7 | |||
| 8 | namespace DirRX.DciCore | ||
| 9 | { | ||
| 10 | partial class DciSettingSharedHandlers | ||
| 11 | { | ||
| 12 | |||
| 13 | } | ||
| 14 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | using DirRX.DciCore.DciSetting; | ||
| 7 | |||
| 8 | namespace DirRX.DciCore.Shared | ||
| 9 | { | ||
| 10 | partial class DciSettingFunctions | ||
| 11 | { | ||
| 12 | |||
| 13 | } | ||
| 14 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | <data name="Property_SystemID" xml:space="preserve"> | ||
| 121 | <value>Идентификатор системы</value> | ||
| 122 | </data> | ||
| 123 | <data name="DisplayName" xml:space="preserve"> | ||
| 124 | <value>Настройка DCI</value> | ||
| 125 | </data> | ||
| 126 | <data name="AccusativeDisplayName" xml:space="preserve"> | ||
| 127 | <value>Настройки DCI</value> | ||
| 128 | </data> | ||
| 129 | <data name="CollectionDisplayName" xml:space="preserve"> | ||
| 130 | <value>Настройки DCI</value> | ||
| 131 | </data> | ||
| 132 | <data name="Property_AdapterServiceUrl" xml:space="preserve"> | ||
| 133 | <value>Url адаптера</value> | ||
| 134 | </data> | ||
| 135 | <data name="Property_AdapterSiteUrl" xml:space="preserve"> | ||
| 136 | <value>Адрес сайта адаптера</value> | ||
| 137 | </data> | ||
| 138 | <data name="Property_ExchangeFolder" xml:space="preserve"> | ||
| 139 | <value>Папка обмена</value> | ||
| 140 | </data> | ||
| 141 | <data name="Property_ExternalSystemID" xml:space="preserve"> | ||
| 142 | <value>Идентификатор внешней системы</value> | ||
| 143 | </data> | ||
| 144 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | <data name="Property_SystemID" xml:space="preserve"> | ||
| 121 | <value>Идентификатор системы</value> | ||
| 122 | </data> | ||
| 123 | <data name="DisplayName" xml:space="preserve"> | ||
| 124 | <value>Настройка DCI</value> | ||
| 125 | </data> | ||
| 126 | <data name="AccusativeDisplayName" xml:space="preserve"> | ||
| 127 | <value>Настройки DCI</value> | ||
| 128 | </data> | ||
| 129 | <data name="CollectionDisplayName" xml:space="preserve"> | ||
| 130 | <value>Настройки DCI</value> | ||
| 131 | </data> | ||
| 132 | <data name="Property_AdapterServiceUrl" xml:space="preserve"> | ||
| 133 | <value>Url адаптера</value> | ||
| 134 | </data> | ||
| 135 | <data name="Property_AdapterSiteUrl" xml:space="preserve"> | ||
| 136 | <value>Адрес сайта адаптера</value> | ||
| 137 | </data> | ||
| 138 | <data name="Property_ExchangeFolder" xml:space="preserve"> | ||
| 139 | <value>Папка обмена</value> | ||
| 140 | </data> | ||
| 141 | <data name="Property_ExternalSystemID" xml:space="preserve"> | ||
| 142 | <value>Идентификатор внешней системы</value> | ||
| 143 | </data> | ||
| 144 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | { | ||
| 2 | "$type": "Sungero.Metadata.ModuleMetadata, Sungero.Metadata", | ||
| 3 | "NameGuid": "9467e108-745e-47d5-ab30-7e82cb4d5f13", | ||
| 4 | "Name": "DciCore", | ||
| 5 | "AsyncHandlers": [ | ||
| 6 | { | ||
| 7 | "NameGuid": "a03678a5-178b-4a4f-9c0e-fb5d2ddbef33", | ||
| 8 | "Name": "ReceiveProcessMessage", | ||
| 9 | "DelayPeriod": 5, | ||
| 10 | "DelayStrategy": "RegularDelayStrategy", | ||
| 11 | "IsHandlerGenerated": true, | ||
| 12 | "Parameters": [ | ||
| 13 | { | ||
| 14 | "NameGuid": "7a48357c-a513-4920-972a-07c2f5904c12", | ||
| 15 | "Name": "MessageGUID", | ||
| 16 | "ParameterType": "String" | ||
| 17 | } | ||
| 18 | ] | ||
| 19 | }, | ||
| 20 | { | ||
| 21 | "NameGuid": "76d6a6af-4016-471d-a784-780ffaf23255", | ||
| 22 | "Name": "SendProcessMessage", | ||
| 23 | "DelayPeriod": 5, | ||
| 24 | "DelayStrategy": "RegularDelayStrategy", | ||
| 25 | "IsHandlerGenerated": true, | ||
| 26 | "Parameters": [ | ||
| 27 | { | ||
| 28 | "NameGuid": "56b7aed1-4256-4fd0-a0a4-dbf8bea4a0be", | ||
| 29 | "Name": "NameProcessKind", | ||
| 30 | "ParameterType": "String" | ||
| 31 | }, | ||
| 32 | { | ||
| 33 | "NameGuid": "97c34765-74ad-45d7-9941-163e93180b5b", | ||
| 34 | "Name": "IdProcessKind", | ||
| 35 | "ParameterType": "Integer" | ||
| 36 | } | ||
| 37 | ] | ||
| 38 | } | ||
| 39 | ], | ||
| 40 | "ClientAssemblyName": "DirRX.DciCore.Client", | ||
| 41 | "ClientBaseAssemblyName": "DirRX.DciCore.ClientBase", | ||
| 42 | "ClientBaseNamespace": "DirRX.DciCore.ClientBase", | ||
| 43 | "ClientNamespace": "DirRX.DciCore.Client", | ||
| 44 | "Code": "DciCore", | ||
| 45 | "CompanyCode": "DirRX", | ||
| 46 | "Cover": { | ||
| 47 | "NameGuid": "65e41069-aeb8-4d31-89f5-48d2ef52d6fc", | ||
| 48 | "Actions": [ | ||
| 49 | { | ||
| 50 | "$type": "Sungero.Metadata.CoverFunctionActionMetadata, Sungero.Metadata", | ||
| 51 | "NameGuid": "11ef9367-22e7-4afc-b340-21ae67bd2720", | ||
| 52 | "Name": "Settings", | ||
| 53 | "FunctionName": "ShowDciSettings", | ||
| 54 | "GroupId": "19b2648e-125a-4c5f-8421-79d45577097f" | ||
| 55 | }, | ||
| 56 | { | ||
| 57 | "$type": "Sungero.Metadata.CoverEntityListActionMetadata, Sungero.Metadata", | ||
| 58 | "NameGuid": "7f422a54-2157-4ecb-bca1-31820e781997", | ||
| 59 | "Name": "DciProcessKinds", | ||
| 60 | "EntityTypeId": "b8fb59dc-559f-40b8-8ad3-2df642ff71d5", | ||
| 61 | "GroupId": "19b2648e-125a-4c5f-8421-79d45577097f", | ||
| 62 | "PreviousItemGuid": "11ef9367-22e7-4afc-b340-21ae67bd2720" | ||
| 63 | }, | ||
| 64 | { | ||
| 65 | "$type": "Sungero.Metadata.CoverFunctionActionMetadata, Sungero.Metadata", | ||
| 66 | "NameGuid": "a0a59ad8-8975-4014-8aa1-f55021a9461c", | ||
| 67 | "Name": "PingMessage", | ||
| 68 | "FunctionName": "SendDciPingMessage", | ||
| 69 | "GroupId": "19b2648e-125a-4c5f-8421-79d45577097f", | ||
| 70 | "PreviousItemGuid": "7f422a54-2157-4ecb-bca1-31820e781997" | ||
| 71 | } | ||
| 72 | ], | ||
| 73 | "Background": null, | ||
| 74 | "Footer": { | ||
| 75 | "NameGuid": "203ad4b2-8694-45db-953c-0a575e4463c7", | ||
| 76 | "BackgroundPosition": "Stretch" | ||
| 77 | }, | ||
| 78 | "Groups": [ | ||
| 79 | { | ||
| 80 | "NameGuid": "19b2648e-125a-4c5f-8421-79d45577097f", | ||
| 81 | "Name": "GroupSettings", | ||
| 82 | "BackgroundPosition": "Stretch", | ||
| 83 | "IconName": "GroupIconGroupSettings_19b2648e125a4c5f842179d45577097f.png", | ||
| 84 | "TabId": "cd167a53-6a5b-4f1a-bfda-dee3daa70d51" | ||
| 85 | } | ||
| 86 | ], | ||
| 87 | "Header": { | ||
| 88 | "NameGuid": "235fce62-6dfd-4824-8bfd-e566dccbd864", | ||
| 89 | "BackgroundPosition": "Stretch" | ||
| 90 | }, | ||
| 91 | "Tabs": [ | ||
| 92 | { | ||
| 93 | "NameGuid": "cd167a53-6a5b-4f1a-bfda-dee3daa70d51", | ||
| 94 | "Name": "Tab" | ||
| 95 | } | ||
| 96 | ] | ||
| 97 | }, | ||
| 98 | "Dependencies": [ | ||
| 99 | { | ||
| 100 | "Id": "f380c872-469a-4014-9ce5-ffb840907fc6", | ||
| 101 | "IsSolutionModule": true, | ||
| 102 | "MaxVersion": "", | ||
| 103 | "MinVersion": "" | ||
| 104 | }, | ||
| 105 | { | ||
| 106 | "Id": "92491aa6-c4df-4f46-a807-ebdd337bda74", | ||
| 107 | "MaxVersion": "", | ||
| 108 | "MinVersion": "1.1.0.0" | ||
| 109 | }, | ||
| 110 | { | ||
| 111 | "Id": "ec7b606a-21ee-4f16-aba8-ab8c2af76d12", | ||
| 112 | "MaxVersion": "", | ||
| 113 | "MinVersion": "0.0.1.0" | ||
| 114 | } | ||
| 115 | ], | ||
| 116 | "ExplorerTreeOrder": [ | ||
| 117 | { | ||
| 118 | "ItemId": "0a291244-941b-4006-8497-06ecd1fabca4" | ||
| 119 | }, | ||
| 120 | { | ||
| 121 | "ItemId": "b8fb59dc-559f-40b8-8ad3-2df642ff71d5", | ||
| 122 | "PreviousItemId": "0a291244-941b-4006-8497-06ecd1fabca4" | ||
| 123 | } | ||
| 124 | ], | ||
| 125 | "HandledEvents": [ | ||
| 126 | "InitializingServer" | ||
| 127 | ], | ||
| 128 | "IconResourcesKeys": [], | ||
| 129 | "Importance": "Low", | ||
| 130 | "InitializationFunctions": [ | ||
| 131 | { | ||
| 132 | "Name": "AddProcessMessage", | ||
| 133 | "Parameters": [ | ||
| 134 | { | ||
| 135 | "Name": "processKind", | ||
| 136 | "ParameterType": "global::DirRX.DciCore.IDciProcessKind", | ||
| 137 | "ParameterTypeFullName": "DirRX.DciCore.IDciProcessKind, Sungero.Domain.Interfaces" | ||
| 138 | }, | ||
| 139 | { | ||
| 140 | "Name": "rowGUID", | ||
| 141 | "ParameterType": "global::System.Guid", | ||
| 142 | "ParameterTypeFullName": "System.Guid" | ||
| 143 | }, | ||
| 144 | { | ||
| 145 | "Name": "messageName", | ||
| 146 | "ParameterType": "global::System.String", | ||
| 147 | "ParameterTypeFullName": "System.String" | ||
| 148 | }, | ||
| 149 | { | ||
| 150 | "Name": "messageNote", | ||
| 151 | "ParameterType": "global::System.String", | ||
| 152 | "ParameterTypeFullName": "System.String" | ||
| 153 | } | ||
| 154 | ], | ||
| 155 | "ReturnType": "void", | ||
| 156 | "ReturnTypeFullName": "System.Void" | ||
| 157 | }, | ||
| 158 | { | ||
| 159 | "Name": "CreateProcessKind", | ||
| 160 | "Parameters": [ | ||
| 161 | { | ||
| 162 | "Name": "guid", | ||
| 163 | "ParameterType": "global::System.Guid", | ||
| 164 | "ParameterTypeFullName": "System.Guid" | ||
| 165 | }, | ||
| 166 | { | ||
| 167 | "Name": "processName", | ||
| 168 | "ParameterType": "global::System.String", | ||
| 169 | "ParameterTypeFullName": "System.String" | ||
| 170 | }, | ||
| 171 | { | ||
| 172 | "Name": "note", | ||
| 173 | "ParameterType": "global::System.String", | ||
| 174 | "ParameterTypeFullName": "System.String" | ||
| 175 | }, | ||
| 176 | { | ||
| 177 | "Name": "description", | ||
| 178 | "ParameterType": "global::System.String", | ||
| 179 | "ParameterTypeFullName": "System.String" | ||
| 180 | }, | ||
| 181 | { | ||
| 182 | "Name": "processType", | ||
| 183 | "ParameterType": "global::Sungero.Core.Enumeration", | ||
| 184 | "ParameterTypeFullName": "Sungero.Core.Enumeration, Sungero.Domain.Shared" | ||
| 185 | }, | ||
| 186 | { | ||
| 187 | "Name": "entityTypeGuid", | ||
| 188 | "ParameterType": "global::System.Guid", | ||
| 189 | "ParameterTypeFullName": "System.Guid" | ||
| 190 | }, | ||
| 191 | { | ||
| 192 | "Name": "startSyncDate", | ||
| 193 | "ParameterType": "global::System.DateTime", | ||
| 194 | "ParameterTypeFullName": "System.DateTime" | ||
| 195 | } | ||
| 196 | ], | ||
| 197 | "ReturnType": "global::DirRX.DciCore.IDciProcessKind", | ||
| 198 | "ReturnTypeFullName": "DirRX.DciCore.IDciProcessKind, Sungero.Domain.Interfaces" | ||
| 199 | } | ||
| 200 | ], | ||
| 201 | "InterfaceAssemblyName": "Sungero.Domain.Interfaces", | ||
| 202 | "InterfaceNamespace": "DirRX.DciCore", | ||
| 203 | "Jobs": [ | ||
| 204 | { | ||
| 205 | "NameGuid": "c22dcae5-4d53-4637-a2b8-136f4e75666d", | ||
| 206 | "Name": "SendEntitiesToDciSynchronization", | ||
| 207 | "Daily": "Repeat", | ||
| 208 | "GenerateHandler": true, | ||
| 209 | "IsEnabled": false, | ||
| 210 | "MonthSchedule": "Monthly", | ||
| 211 | "TimePeriod": 30 | ||
| 212 | } | ||
| 213 | ], | ||
| 214 | "Libraries": [ | ||
| 215 | { | ||
| 216 | "NameGuid": "eb3bcb57-e730-4f30-b9e3-7eb254b7fd6c", | ||
| 217 | "Name": "Dci", | ||
| 218 | "Scope": "Server" | ||
| 219 | } | ||
| 220 | ], | ||
| 221 | "Overridden": [ | ||
| 222 | "Importance" | ||
| 223 | ], | ||
| 224 | "PublicConstants": [ | ||
| 225 | { | ||
| 226 | "Name": "Active", | ||
| 227 | "ParentClasses": [ | ||
| 228 | "Module", | ||
| 229 | "D5StatusName" | ||
| 230 | ], | ||
| 231 | "TypeName": "System.String", | ||
| 232 | "Value": "\"Действующая\"" | ||
| 233 | }, | ||
| 234 | { | ||
| 235 | "Name": "Closed", | ||
| 236 | "ParentClasses": [ | ||
| 237 | "Module", | ||
| 238 | "D5StatusName" | ||
| 239 | ], | ||
| 240 | "TypeName": "System.String", | ||
| 241 | "Value": "\"Закрытая\"" | ||
| 242 | }, | ||
| 243 | { | ||
| 244 | "Name": "EntityIsLocked", | ||
| 245 | "ParentClasses": [ | ||
| 246 | "Module", | ||
| 247 | "ErrorType" | ||
| 248 | ], | ||
| 249 | "TypeName": "System.String", | ||
| 250 | "Value": "\"EntityIsLocked\"" | ||
| 251 | } | ||
| 252 | ], | ||
| 253 | "PublicFunctions": [ | ||
| 254 | { | ||
| 255 | "Name": "Base64ToString", | ||
| 256 | "Parameters": [ | ||
| 257 | { | ||
| 258 | "Name": "value", | ||
| 259 | "ParameterType": "global::System.String", | ||
| 260 | "ParameterTypeFullName": "System.String" | ||
| 261 | } | ||
| 262 | ], | ||
| 263 | "Placement": "Shared", | ||
| 264 | "ReturnType": "global::System.String", | ||
| 265 | "ReturnTypeFullName": "System.String" | ||
| 266 | }, | ||
| 267 | { | ||
| 268 | "Name": "ConvertD5StatusToRXStatus", | ||
| 269 | "Parameters": [ | ||
| 270 | { | ||
| 271 | "Name": "d5Status", | ||
| 272 | "ParameterType": "global::System.String", | ||
| 273 | "ParameterTypeFullName": "System.String" | ||
| 274 | } | ||
| 275 | ], | ||
| 276 | "Placement": "Shared", | ||
| 277 | "ReturnType": "global::System.Nullable<global::Sungero.Core.Enumeration>", | ||
| 278 | "ReturnTypeFullName": "System.Nullable" | ||
| 279 | }, | ||
| 280 | { | ||
| 281 | "Name": "ConvertRXStatusToD5Status", | ||
| 282 | "Parameters": [ | ||
| 283 | { | ||
| 284 | "Name": "rxStatus", | ||
| 285 | "ParameterType": "global::System.Nullable<global::Sungero.Core.Enumeration>", | ||
| 286 | "ParameterTypeFullName": "System.Nullable" | ||
| 287 | } | ||
| 288 | ], | ||
| 289 | "Placement": "Shared", | ||
| 290 | "ReturnType": "global::System.String", | ||
| 291 | "ReturnTypeFullName": "System.String" | ||
| 292 | }, | ||
| 293 | { | ||
| 294 | "Name": "ConvertTextRXStatusToRXStatus", | ||
| 295 | "Parameters": [ | ||
| 296 | { | ||
| 297 | "Name": "stringStatus", | ||
| 298 | "ParameterType": "global::System.String", | ||
| 299 | "ParameterTypeFullName": "System.String" | ||
| 300 | } | ||
| 301 | ], | ||
| 302 | "Placement": "Shared", | ||
| 303 | "ReturnType": "global::System.Nullable<global::Sungero.Core.Enumeration>", | ||
| 304 | "ReturnTypeFullName": "System.Nullable" | ||
| 305 | }, | ||
| 306 | { | ||
| 307 | "Name": "DateTimeToDciString", | ||
| 308 | "Parameters": [ | ||
| 309 | { | ||
| 310 | "Name": "value", | ||
| 311 | "ParameterType": "global::System.DateTime", | ||
| 312 | "ParameterTypeFullName": "System.DateTime" | ||
| 313 | } | ||
| 314 | ], | ||
| 315 | "ReturnType": "global::System.String", | ||
| 316 | "ReturnTypeFullName": "System.String" | ||
| 317 | }, | ||
| 318 | { | ||
| 319 | "Name": "DateToDciString", | ||
| 320 | "Parameters": [ | ||
| 321 | { | ||
| 322 | "Name": "value", | ||
| 323 | "ParameterType": "global::System.DateTime", | ||
| 324 | "ParameterTypeFullName": "System.DateTime" | ||
| 325 | } | ||
| 326 | ], | ||
| 327 | "ReturnType": "global::System.String", | ||
| 328 | "ReturnTypeFullName": "System.String" | ||
| 329 | }, | ||
| 330 | { | ||
| 331 | "Name": "DeleteEntityByProcessName", | ||
| 332 | "IsRemote": true, | ||
| 333 | "Parameters": [ | ||
| 334 | { | ||
| 335 | "Name": "entityId", | ||
| 336 | "ParameterType": "global::System.Int32", | ||
| 337 | "ParameterTypeFullName": "System.Int32" | ||
| 338 | }, | ||
| 339 | { | ||
| 340 | "Name": "entityTypeGuid", | ||
| 341 | "ParameterType": "global::System.String", | ||
| 342 | "ParameterTypeFullName": "System.String" | ||
| 343 | }, | ||
| 344 | { | ||
| 345 | "Name": "processName", | ||
| 346 | "ParameterType": "global::System.String", | ||
| 347 | "ParameterTypeFullName": "System.String" | ||
| 348 | } | ||
| 349 | ], | ||
| 350 | "Placement": "Shared", | ||
| 351 | "ReturnType": "global::System.String", | ||
| 352 | "ReturnTypeFullName": "System.String" | ||
| 353 | }, | ||
| 354 | { | ||
| 355 | "Name": "EnqueueDciMessage", | ||
| 356 | "Parameters": [ | ||
| 357 | { | ||
| 358 | "Name": "processMessageGlobalId", | ||
| 359 | "ParameterType": "global::System.String", | ||
| 360 | "ParameterTypeFullName": "System.String" | ||
| 361 | } | ||
| 362 | ], | ||
| 363 | "ReturnType": "global::System.String", | ||
| 364 | "ReturnTypeFullName": "System.String", | ||
| 365 | "WebApiRequestType": "Post" | ||
| 366 | }, | ||
| 367 | { | ||
| 368 | "Name": "GetAllEntityLinksByGuid", | ||
| 369 | "IsRemote": true, | ||
| 370 | "Parameters": [ | ||
| 371 | { | ||
| 372 | "Name": "guid", | ||
| 373 | "ParameterType": "global::System.String", | ||
| 374 | "ParameterTypeFullName": "System.String" | ||
| 375 | } | ||
| 376 | ], | ||
| 377 | "Placement": "Shared", | ||
| 378 | "ReturnType": "global::System.Linq.IQueryable<global::Sungero.Commons.IExternalEntityLink>", | ||
| 379 | "ReturnTypeFullName": "System.Linq.IQueryable" | ||
| 380 | }, | ||
| 381 | { | ||
| 382 | "Name": "GetChangedDatabookRecords", | ||
| 383 | "Parameters": [ | ||
| 384 | { | ||
| 385 | "Name": "baseGuid", | ||
| 386 | "ParameterType": "global::System.String", | ||
| 387 | "ParameterTypeFullName": "System.String" | ||
| 388 | }, | ||
| 389 | { | ||
| 390 | "Name": "dateBegin", | ||
| 391 | "ParameterType": "global::System.DateTime", | ||
| 392 | "ParameterTypeFullName": "System.DateTime" | ||
| 393 | }, | ||
| 394 | { | ||
| 395 | "Name": "dateEnd", | ||
| 396 | "ParameterType": "global::System.DateTime", | ||
| 397 | "ParameterTypeFullName": "System.DateTime" | ||
| 398 | } | ||
| 399 | ], | ||
| 400 | "ReturnType": "global::System.Linq.IQueryable<global::System.Int32>", | ||
| 401 | "ReturnTypeFullName": "System.Linq.IQueryable" | ||
| 402 | }, | ||
| 403 | { | ||
| 404 | "Name": "GetDatabookEntityById", | ||
| 405 | "IsRemote": true, | ||
| 406 | "Parameters": [ | ||
| 407 | { | ||
| 408 | "Name": "entityId", | ||
| 409 | "ParameterType": "global::System.Int32", | ||
| 410 | "ParameterTypeFullName": "System.Int32" | ||
| 411 | }, | ||
| 412 | { | ||
| 413 | "Name": "entityTypeGuid", | ||
| 414 | "ParameterType": "global::System.String", | ||
| 415 | "ParameterTypeFullName": "System.String" | ||
| 416 | } | ||
| 417 | ], | ||
| 418 | "Placement": "Shared", | ||
| 419 | "ReturnType": "global::Sungero.CoreEntities.IDatabookEntry", | ||
| 420 | "ReturnTypeFullName": "Sungero.CoreEntities.IDatabookEntry, Sungero.Domain.Shared" | ||
| 421 | }, | ||
| 422 | { | ||
| 423 | "Name": "GetDCIMessageNameByEntity", | ||
| 424 | "Parameters": [ | ||
| 425 | { | ||
| 426 | "Name": "entity", | ||
| 427 | "ParameterType": "global::Sungero.CoreEntities.IDatabookEntry", | ||
| 428 | "ParameterTypeFullName": "Sungero.CoreEntities.IDatabookEntry, Sungero.Domain.Shared" | ||
| 429 | } | ||
| 430 | ], | ||
| 431 | "ReturnType": "global::System.String", | ||
| 432 | "ReturnTypeFullName": "System.String" | ||
| 433 | }, | ||
| 434 | { | ||
| 435 | "Name": "GetEntityIdByGuid", | ||
| 436 | "IsRemote": true, | ||
| 437 | "Parameters": [ | ||
| 438 | { | ||
| 439 | "Name": "guid", | ||
| 440 | "ParameterType": "global::System.String", | ||
| 441 | "ParameterTypeFullName": "System.String" | ||
| 442 | } | ||
| 443 | ], | ||
| 444 | "Placement": "Shared", | ||
| 445 | "ReturnType": "global::System.Int32", | ||
| 446 | "ReturnTypeFullName": "System.Int32" | ||
| 447 | }, | ||
| 448 | { | ||
| 449 | "Name": "GetEntityLinkByGuid", | ||
| 450 | "IsRemote": true, | ||
| 451 | "Parameters": [ | ||
| 452 | { | ||
| 453 | "Name": "guid", | ||
| 454 | "ParameterType": "global::System.String", | ||
| 455 | "ParameterTypeFullName": "System.String" | ||
| 456 | } | ||
| 457 | ], | ||
| 458 | "Placement": "Shared", | ||
| 459 | "ReturnType": "global::Sungero.Commons.IExternalEntityLink", | ||
| 460 | "ReturnTypeFullName": "Sungero.Commons.IExternalEntityLink, Sungero.Domain.Interfaces" | ||
| 461 | }, | ||
| 462 | { | ||
| 463 | "Name": "GetExternalEntityLink", | ||
| 464 | "IsRemote": true, | ||
| 465 | "Parameters": [ | ||
| 466 | { | ||
| 467 | "Name": "entityId", | ||
| 468 | "ParameterType": "global::System.Int32", | ||
| 469 | "ParameterTypeFullName": "System.Int32" | ||
| 470 | }, | ||
| 471 | { | ||
| 472 | "Name": "entityTypeGuid", | ||
| 473 | "ParameterType": "global::System.String", | ||
| 474 | "ParameterTypeFullName": "System.String" | ||
| 475 | }, | ||
| 476 | { | ||
| 477 | "Name": "externalSystemID", | ||
| 478 | "ParameterType": "global::System.String", | ||
| 479 | "ParameterTypeFullName": "System.String" | ||
| 480 | } | ||
| 481 | ], | ||
| 482 | "Placement": "Shared", | ||
| 483 | "ReturnType": "global::Sungero.Commons.IExternalEntityLink", | ||
| 484 | "ReturnTypeFullName": "Sungero.Commons.IExternalEntityLink, Sungero.Domain.Interfaces" | ||
| 485 | }, | ||
| 486 | { | ||
| 487 | "Name": "GetHyperlinkToDciProcess", | ||
| 488 | "Parameters": [ | ||
| 489 | { | ||
| 490 | "Name": "setting", | ||
| 491 | "ParameterType": "global::DirRX.DciCore.IDciSetting", | ||
| 492 | "ParameterTypeFullName": "DirRX.DciCore.IDciSetting, Sungero.Domain.Interfaces" | ||
| 493 | }, | ||
| 494 | { | ||
| 495 | "Name": "processGUID", | ||
| 496 | "ParameterType": "global::System.String", | ||
| 497 | "ParameterTypeFullName": "System.String" | ||
| 498 | } | ||
| 499 | ], | ||
| 500 | "Placement": "Shared", | ||
| 501 | "ReturnType": "global::System.String", | ||
| 502 | "ReturnTypeFullName": "System.String" | ||
| 503 | }, | ||
| 504 | { | ||
| 505 | "Name": "SendDciPing", | ||
| 506 | "IsRemote": true, | ||
| 507 | "Placement": "Shared", | ||
| 508 | "ReturnType": "global::System.String", | ||
| 509 | "ReturnTypeFullName": "System.String" | ||
| 510 | }, | ||
| 511 | { | ||
| 512 | "Name": "SendDciPingMessage", | ||
| 513 | "Placement": "Client", | ||
| 514 | "ReturnType": "void", | ||
| 515 | "ReturnTypeFullName": "System.Void" | ||
| 516 | }, | ||
| 517 | { | ||
| 518 | "Name": "SendNotificatiobAboutReceiveErrors", | ||
| 519 | "Parameters": [ | ||
| 520 | { | ||
| 521 | "Name": "errors", | ||
| 522 | "ParameterType": "System.Collections.Generic.IList<global::System.String>" | ||
| 523 | }, | ||
| 524 | { | ||
| 525 | "Name": "processName", | ||
| 526 | "ParameterType": "global::System.String", | ||
| 527 | "ParameterTypeFullName": "System.String" | ||
| 528 | }, | ||
| 529 | { | ||
| 530 | "Name": "processGUID", | ||
| 531 | "ParameterType": "global::System.String", | ||
| 532 | "ParameterTypeFullName": "System.String" | ||
| 533 | }, | ||
| 534 | { | ||
| 535 | "Name": "messageName", | ||
| 536 | "ParameterType": "global::System.String", | ||
| 537 | "ParameterTypeFullName": "System.String" | ||
| 538 | }, | ||
| 539 | { | ||
| 540 | "Name": "messageGUID", | ||
| 541 | "ParameterType": "global::System.String", | ||
| 542 | "ParameterTypeFullName": "System.String" | ||
| 543 | } | ||
| 544 | ], | ||
| 545 | "ReturnType": "void", | ||
| 546 | "ReturnTypeFullName": "System.Void" | ||
| 547 | }, | ||
| 548 | { | ||
| 549 | "Name": "SetExternalEntityLinkGuid", | ||
| 550 | "IsRemote": true, | ||
| 551 | "Parameters": [ | ||
| 552 | { | ||
| 553 | "Name": "entityId", | ||
| 554 | "ParameterType": "global::System.Int32", | ||
| 555 | "ParameterTypeFullName": "System.Int32" | ||
| 556 | }, | ||
| 557 | { | ||
| 558 | "Name": "entityTypeGuid", | ||
| 559 | "ParameterType": "global::System.String", | ||
| 560 | "ParameterTypeFullName": "System.String" | ||
| 561 | }, | ||
| 562 | { | ||
| 563 | "Name": "externalSystemID", | ||
| 564 | "ParameterType": "global::System.String", | ||
| 565 | "ParameterTypeFullName": "System.String" | ||
| 566 | }, | ||
| 567 | { | ||
| 568 | "Name": "externalEntityGuid", | ||
| 569 | "ParameterType": "global::System.String", | ||
| 570 | "ParameterTypeFullName": "System.String" | ||
| 571 | } | ||
| 572 | ], | ||
| 573 | "Placement": "Shared", | ||
| 574 | "ReturnType": "global::Sungero.Commons.IExternalEntityLink", | ||
| 575 | "ReturnTypeFullName": "Sungero.Commons.IExternalEntityLink, Sungero.Domain.Interfaces" | ||
| 576 | }, | ||
| 577 | { | ||
| 578 | "Name": "ShowDciSettings", | ||
| 579 | "Placement": "Client", | ||
| 580 | "ReturnType": "void", | ||
| 581 | "ReturnTypeFullName": "System.Void" | ||
| 582 | }, | ||
| 583 | { | ||
| 584 | "Name": "StringToBase64", | ||
| 585 | "Parameters": [ | ||
| 586 | { | ||
| 587 | "Name": "value", | ||
| 588 | "ParameterType": "global::System.String", | ||
| 589 | "ParameterTypeFullName": "System.String" | ||
| 590 | } | ||
| 591 | ], | ||
| 592 | "Placement": "Shared", | ||
| 593 | "ReturnType": "global::System.String", | ||
| 594 | "ReturnTypeFullName": "System.String" | ||
| 595 | }, | ||
| 596 | { | ||
| 597 | "Name": "StringToDate", | ||
| 598 | "Parameters": [ | ||
| 599 | { | ||
| 600 | "Name": "value", | ||
| 601 | "ParameterType": "global::System.String", | ||
| 602 | "ParameterTypeFullName": "System.String" | ||
| 603 | } | ||
| 604 | ], | ||
| 605 | "ReturnType": "global::System.Nullable<global::System.DateTime>", | ||
| 606 | "ReturnTypeFullName": "System.Nullable" | ||
| 607 | }, | ||
| 608 | { | ||
| 609 | "Name": "StringToDateTime", | ||
| 610 | "Parameters": [ | ||
| 611 | { | ||
| 612 | "Name": "value", | ||
| 613 | "ParameterType": "global::System.String", | ||
| 614 | "ParameterTypeFullName": "System.String" | ||
| 615 | } | ||
| 616 | ], | ||
| 617 | "ReturnType": "global::System.Nullable<global::System.DateTime>", | ||
| 618 | "ReturnTypeFullName": "System.Nullable" | ||
| 619 | }, | ||
| 620 | { | ||
| 621 | "Name": "StringToDouble", | ||
| 622 | "Parameters": [ | ||
| 623 | { | ||
| 624 | "Name": "value", | ||
| 625 | "ParameterType": "global::System.String", | ||
| 626 | "ParameterTypeFullName": "System.String" | ||
| 627 | } | ||
| 628 | ], | ||
| 629 | "Placement": "Shared", | ||
| 630 | "ReturnType": "global::System.Nullable<global::System.Double>", | ||
| 631 | "ReturnTypeFullName": "System.Nullable" | ||
| 632 | }, | ||
| 633 | { | ||
| 634 | "Name": "StringToInt", | ||
| 635 | "Parameters": [ | ||
| 636 | { | ||
| 637 | "Name": "value", | ||
| 638 | "ParameterType": "global::System.String", | ||
| 639 | "ParameterTypeFullName": "System.String" | ||
| 640 | } | ||
| 641 | ], | ||
| 642 | "Placement": "Shared", | ||
| 643 | "ReturnType": "global::System.Nullable<global::System.Int32>", | ||
| 644 | "ReturnTypeFullName": "System.Nullable" | ||
| 645 | }, | ||
| 646 | { | ||
| 647 | "Name": "ValidateDciName", | ||
| 648 | "Parameters": [ | ||
| 649 | { | ||
| 650 | "Name": "name", | ||
| 651 | "ParameterType": "global::System.String", | ||
| 652 | "ParameterTypeFullName": "System.String" | ||
| 653 | } | ||
| 654 | ], | ||
| 655 | "Placement": "Shared", | ||
| 656 | "ReturnType": "global::System.String", | ||
| 657 | "ReturnTypeFullName": "System.String" | ||
| 658 | } | ||
| 659 | ], | ||
| 660 | "PublicStructures": [], | ||
| 661 | "ResourceInterfaceAssemblyName": "Sungero.Domain.Interfaces", | ||
| 662 | "ResourceInterfaceNamespace": "DirRX.DciCore", | ||
| 663 | "ResourcesKeys": [ | ||
| 664 | "NotFoundDeleteHandlerByProcess", | ||
| 665 | "NotFoundMessageByGlobalId", | ||
| 666 | "ReceiveErrorDetailText", | ||
| 667 | "ReceiveHandlerError", | ||
| 668 | "InsufficientDataError", | ||
| 669 | "ReceiveErrorTaskText", | ||
| 670 | "NotFoundReceiveHandlerByProcess", | ||
| 671 | "ReceiveErrorTaskSubject", | ||
| 672 | "DciSettingsNotFound", | ||
| 673 | "NotFoundProcessByMessage", | ||
| 674 | "SendPingTrackingMessage", | ||
| 675 | "MultipleEntitiesFoundToDelete", | ||
| 676 | "NoEntitiesFoundToDelete", | ||
| 677 | "DeleteEntityError", | ||
| 678 | "NotFoundExternalEntityLink", | ||
| 679 | "NotFoundPrepareHandlerByProcess" | ||
| 680 | ], | ||
| 681 | "ServerAssemblyName": "DirRX.DciCore.Server", | ||
| 682 | "ServerNamespace": "DirRX.DciCore.Server", | ||
| 683 | "SharedAssemblyName": "DirRX.DciCore.Shared", | ||
| 684 | "SharedNamespace": "DirRX.DciCore.Shared", | ||
| 685 | "SpecialFolders": [], | ||
| 686 | "Version": "1.0.4427.0", | ||
| 687 | "Widgets": [], | ||
| 688 | "Versions": [ | ||
| 689 | { | ||
| 690 | "Type": "ModuleMetadata", | ||
| 691 | "Number": 8 | ||
| 692 | }, | ||
| 693 | { | ||
| 694 | "Type": "DomainApi", | ||
| 695 | "Number": 3 | ||
| 696 | } | ||
| 697 | ] | ||
| 698 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | <data name="NotFoundDeleteHandlerByProcess" xml:space="preserve"> | ||
| 121 | <value>В разработке не реализован обработчик для удаления сущности по процессу "{0}".</value> | ||
| 122 | </data> | ||
| 123 | <data name="NotFoundMessageByGlobalId" xml:space="preserve"> | ||
| 124 | <value>Сообщение DCI с GUID {0} не существует. Проверьте наличие сообщения в адаптере DCI.</value> | ||
| 125 | </data> | ||
| 126 | <data name="ReceiveErrorDetailText" xml:space="preserve"> | ||
| 127 | <value>Процесс: {0} {1} | ||
| 128 | Сообщение: {2} {3} | ||
| 129 | Путь к папке обмена: {4} | ||
| 130 | Ссылка на сообщение: {5} | ||
| 131 | Текст ошибки: {6}</value> | ||
| 132 | </data> | ||
| 133 | <data name="ReceiveHandlerError" xml:space="preserve"> | ||
| 134 | <value>Ошибка обработки: {0} | ||
| 135 | {1}</value> | ||
| 136 | </data> | ||
| 137 | <data name="InsufficientDataError" xml:space="preserve"> | ||
| 138 | <value>В сообщении недостаточно данных для обработки сообщения.</value> | ||
| 139 | </data> | ||
| 140 | <data name="ReceiveErrorTaskText" xml:space="preserve"> | ||
| 141 | <value>При обработке входящего сообщения произошла ошибки. См. в логах службы Worker. | ||
| 142 | {0}</value> | ||
| 143 | </data> | ||
| 144 | <data name="NotFoundReceiveHandlerByProcess" xml:space="preserve"> | ||
| 145 | <value>В разработке не реализован обработчик для приема сообщения "{0}" по процессу "{1}".</value> | ||
| 146 | </data> | ||
| 147 | <data name="ReceiveErrorTaskSubject" xml:space="preserve"> | ||
| 148 | <value>Ошибка при приеме сообщения DCI {0} по процессу {1}</value> | ||
| 149 | </data> | ||
| 150 | <data name="DciSettingsNotFound" xml:space="preserve"> | ||
| 151 | <value>Не найдена запись справочника "Настройки DCI". Выполните настройку решения.</value> | ||
| 152 | </data> | ||
| 153 | <data name="NotFoundProcessByMessage" xml:space="preserve"> | ||
| 154 | <value>Процесс DCI по сообщению с GUID {0} не найден. Проверьте наличие данного сообщения и процесса в адаптере DCI.</value> | ||
| 155 | </data> | ||
| 156 | <data name="SendPingTrackingMessage" xml:space="preserve"> | ||
| 157 | <value>Тестовое сообщение отправлено. Для отслеживания состояние межсистемного процесса откройте сайт адаптера DCI {0}</value> | ||
| 158 | </data> | ||
| 159 | <data name="MultipleEntitiesFoundToDelete" xml:space="preserve"> | ||
| 160 | <value>Найдено несколько сущностей с ИД {0} и GUID типа сущности {1}.</value> | ||
| 161 | </data> | ||
| 162 | <data name="NoEntitiesFoundToDelete" xml:space="preserve"> | ||
| 163 | <value>Не найдена сущность с ИД {0} и GUID типа сущности {1}.</value> | ||
| 164 | </data> | ||
| 165 | <data name="DeleteEntityError" xml:space="preserve"> | ||
| 166 | <value>Ошибка удаления сущности из системы. | ||
| 167 | {0} | ||
| 168 | {1}</value> | ||
| 169 | </data> | ||
| 170 | <data name="NotFoundExternalEntityLink" xml:space="preserve"> | ||
| 171 | <value>В справочнике "Ссылки внешней системы" не найдена ссылка с GUID {0}. Вероятно запись не была синхронизирована ранее.</value> | ||
| 172 | </data> | ||
| 173 | <data name="NotFoundPrepareHandlerByProcess" xml:space="preserve"> | ||
| 174 | <value>В разработке не реализован обработчик для подготовки исходящего сообщения "{0}" по процессу "{1}".</value> | ||
| 175 | </data> | ||
| 176 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <!-- | ||
| 4 | Microsoft ResX Schema | ||
| 5 | |||
| 6 | Version 2.0 | ||
| 7 | |||
| 8 | The primary goals of this format is to allow a simple XML format | ||
| 9 | that is mostly human readable. The generation and parsing of the | ||
| 10 | various data types are done through the TypeConverter classes | ||
| 11 | associated with the data types. | ||
| 12 | |||
| 13 | Example: | ||
| 14 | |||
| 15 | ... ado.net/XML headers & schema ... | ||
| 16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
| 17 | <resheader name="version">2.0</resheader> | ||
| 18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
| 19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
| 20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
| 21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
| 22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
| 23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
| 24 | </data> | ||
| 25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
| 26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
| 27 | <comment>This is a comment</comment> | ||
| 28 | </data> | ||
| 29 | |||
| 30 | There are any number of "resheader" rows that contain simple | ||
| 31 | name/value pairs. | ||
| 32 | |||
| 33 | Each data row contains a name, and value. The row also contains a | ||
| 34 | type or mimetype. Type corresponds to a .NET class that support | ||
| 35 | text/value conversion through the TypeConverter architecture. | ||
| 36 | Classes that don't support this are serialized and stored with the | ||
| 37 | mimetype set. | ||
| 38 | |||
| 39 | The mimetype is used for serialized objects, and tells the | ||
| 40 | ResXResourceReader how to depersist the object. This is currently not | ||
| 41 | extensible. For a given mimetype the value must be set accordingly: | ||
| 42 | |||
| 43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
| 44 | that the ResXResourceWriter will generate, however the reader can | ||
| 45 | read any of the formats listed below. | ||
| 46 | |||
| 47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
| 48 | value : The object must be serialized with | ||
| 49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
| 50 | : and then encoded with base64 encoding. | ||
| 51 | |||
| 52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
| 53 | value : The object must be serialized with | ||
| 54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
| 55 | : and then encoded with base64 encoding. | ||
| 56 | |||
| 57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
| 58 | value : The object must be serialized into a byte array | ||
| 59 | : using a System.ComponentModel.TypeConverter | ||
| 60 | : and then encoded with base64 encoding. | ||
| 61 | --> | ||
| 62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 65 | <xsd:complexType> | ||
| 66 | <xsd:choice maxOccurs="unbounded"> | ||
| 67 | <xsd:element name="metadata"> | ||
| 68 | <xsd:complexType> | ||
| 69 | <xsd:sequence> | ||
| 70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 71 | </xsd:sequence> | ||
| 72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 73 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 75 | <xsd:attribute ref="xml:space" /> | ||
| 76 | </xsd:complexType> | ||
| 77 | </xsd:element> | ||
| 78 | <xsd:element name="assembly"> | ||
| 79 | <xsd:complexType> | ||
| 80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 81 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 82 | </xsd:complexType> | ||
| 83 | </xsd:element> | ||
| 84 | <xsd:element name="data"> | ||
| 85 | <xsd:complexType> | ||
| 86 | <xsd:sequence> | ||
| 87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 89 | </xsd:sequence> | ||
| 90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 93 | <xsd:attribute ref="xml:space" /> | ||
| 94 | </xsd:complexType> | ||
| 95 | </xsd:element> | ||
| 96 | <xsd:element name="resheader"> | ||
| 97 | <xsd:complexType> | ||
| 98 | <xsd:sequence> | ||
| 99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 100 | </xsd:sequence> | ||
| 101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 102 | </xsd:complexType> | ||
| 103 | </xsd:element> | ||
| 104 | </xsd:choice> | ||
| 105 | </xsd:complexType> | ||
| 106 | </xsd:element> | ||
| 107 | </xsd:schema> | ||
| 108 | <resheader name="resmimetype"> | ||
| 109 | <value>text/microsoft-resx</value> | ||
| 110 | </resheader> | ||
| 111 | <resheader name="version"> | ||
| 112 | <value>2.0</value> | ||
| 113 | </resheader> | ||
| 114 | <resheader name="reader"> | ||
| 115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 116 | </resheader> | ||
| 117 | <resheader name="writer"> | ||
| 118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 119 | </resheader> | ||
| 120 | <data name="NotFoundDeleteHandlerByProcess" xml:space="preserve"> | ||
| 121 | <value>В разработке не реализован обработчик для удаления сущности по процессу "{0}".</value> | ||
| 122 | </data> | ||
| 123 | <data name="NotFoundMessageByGlobalId" xml:space="preserve"> | ||
| 124 | <value>Сообщение DCI с GUID {0} не существует. Проверьте наличие сообщения в адаптере DCI.</value> | ||
| 125 | </data> | ||
| 126 | <data name="ReceiveErrorDetailText" xml:space="preserve"> | ||
| 127 | <value>Процесс: {0} {1} | ||
| 128 | Сообщение: {2} {3} | ||
| 129 | Путь к папке обмена: {4} | ||
| 130 | Ссылка на сообщение: {5} | ||
| 131 | Текст ошибки: {6}</value> | ||
| 132 | </data> | ||
| 133 | <data name="ReceiveHandlerError" xml:space="preserve"> | ||
| 134 | <value>Ошибка обработки: {0} | ||
| 135 | {1}</value> | ||
| 136 | </data> | ||
| 137 | <data name="InsufficientDataError" xml:space="preserve"> | ||
| 138 | <value>В сообщении недостаточно данных для обработки сообщения.</value> | ||
| 139 | </data> | ||
| 140 | <data name="ReceiveErrorTaskText" xml:space="preserve"> | ||
| 141 | <value>При обработке входящего сообщения произошла ошибки. См. в логах службы Worker. | ||
| 142 | {0}</value> | ||
| 143 | </data> | ||
| 144 | <data name="NotFoundReceiveHandlerByProcess" xml:space="preserve"> | ||
| 145 | <value>В разработке не реализован обработчик для приема сообщения "{0}" по процессу "{1}".</value> | ||
| 146 | </data> | ||
| 147 | <data name="ReceiveErrorTaskSubject" xml:space="preserve"> | ||
| 148 | <value>Ошибка при приеме сообщения DCI {0} по процессу {1}</value> | ||
| 149 | </data> | ||
| 150 | <data name="DciSettingsNotFound" xml:space="preserve"> | ||
| 151 | <value>Не найдена запись справочника "Настройки DCI". Выполните настройку решения.</value> | ||
| 152 | </data> | ||
| 153 | <data name="NotFoundProcessByMessage" xml:space="preserve"> | ||
| 154 | <value>Процесс DCI по сообщению с GUID {0} не найден. Проверьте наличие данного сообщения и процесса в адаптере DCI.</value> | ||
| 155 | </data> | ||
| 156 | <data name="SendPingTrackingMessage" xml:space="preserve"> | ||
| 157 | <value>Тестовое сообщение отправлено. Для отслеживания состояние межсистемного процесса откройте сайт адаптера DCI {0}</value> | ||
| 158 | </data> | ||
| 159 | <data name="MultipleEntitiesFoundToDelete" xml:space="preserve"> | ||
| 160 | <value>Найдено несколько сущностей с ИД {0} и GUID типа сущности {1}.</value> | ||
| 161 | </data> | ||
| 162 | <data name="NoEntitiesFoundToDelete" xml:space="preserve"> | ||
| 163 | <value>Не найдена сущность с ИД {0} и GUID типа сущности {1}.</value> | ||
| 164 | </data> | ||
| 165 | <data name="DeleteEntityError" xml:space="preserve"> | ||
| 166 | <value>Ошибка удаления сущности из системы. | ||
| 167 | {0} | ||
| 168 | {1}</value> | ||
| 169 | </data> | ||
| 170 | <data name="NotFoundExternalEntityLink" xml:space="preserve"> | ||
| 171 | <value>В справочнике "Ссылки внешней системы" не найдена ссылка с GUID {0}. Вероятно запись не была синхронизирована ранее.</value> | ||
| 172 | </data> | ||
| 173 | <data name="NotFoundPrepareHandlerByProcess" xml:space="preserve"> | ||
| 174 | <value>В разработке не реализован обработчик для подготовки исходящего сообщения "{0}" по процессу "{1}".</value> | ||
| 175 | </data> | ||
| 176 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using Sungero.Core; | ||
| 3 | |||
| 4 | namespace DirRX.DciCore.Constants | ||
| 5 | { | ||
| 6 | public static class Module | ||
| 7 | { | ||
| 8 | |||
| 9 | /// <summary> | ||
| 10 | /// Константы для типов ошибок. | ||
| 11 | /// </summary> | ||
| 12 | public static class ErrorType | ||
| 13 | { | ||
| 14 | [Public] | ||
| 15 | public const string EntityIsLocked = "EntityIsLocked"; | ||
| 16 | } | ||
| 17 | |||
| 18 | /// <summary> | ||
| 19 | /// Константы для наименований статусов записи Directum 5. | ||
| 20 | /// </summary> | ||
| 21 | public static class D5StatusName | ||
| 22 | { | ||
| 23 | [Public] | ||
| 24 | public const string Active = "Действующая"; | ||
| 25 | [Public] | ||
| 26 | public const string Closed = "Закрытая"; | ||
| 27 | } | ||
| 28 | |||
| 29 | } | ||
| 30 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | using System; | ||
| 2 | using System.Collections.Generic; | ||
| 3 | using System.Linq; | ||
| 4 | using Sungero.Core; | ||
| 5 | using Sungero.CoreEntities; | ||
| 6 | |||
| 7 | namespace DirRX.DciCore.Shared | ||
| 8 | { | ||
| 9 | public class ModuleFunctions | ||
| 10 | { | ||
| 11 | |||
| 12 | #region Полезные функции | ||
| 13 | |||
| 14 | /// <summary> | ||
| 15 | /// Сформировать гиперссылку на сайт адаптера DCI для просмотра сообщений по процессу. | ||
| 16 | /// </summary> | ||
| 17 | /// <param name="setting">Запись справочника "Настройки DCI".</param> | ||
| 18 | /// <param name="processGUID">GUID процесса DCI.</param> | ||
| 19 | /// <returns>Гиперссылка.</returns> | ||
| 20 | [Public] | ||
| 21 | public string GetHyperlinkToDciProcess(IDciSetting setting, string processGUID) | ||
| 22 | { | ||
| 23 | // TODO в адресе может сформироваться два //. | ||
| 24 | return string.Format(@"{0}/Messages?processGuid={1}", setting.AdapterSiteUrl, System.Net.WebUtility.UrlEncode(processGUID)); | ||
| 25 | } | ||
| 26 | |||
| 27 | /// <summary> | ||
| 28 | /// Проверить строку на наличие символов, недопустимых для имени вида процесса или сообщения. | ||
| 29 | /// </summary> | ||
| 30 | /// <param name="name">Проверяемая строка.</param> | ||
| 31 | /// <returns>Пустая строка или текст ошибки.</returns> | ||
| 32 | [Public] | ||
| 33 | public string ValidateDciName(string name) | ||
| 34 | { | ||
| 35 | // Буквы (латиница, кириллица), цифры и символ "_", и начинается с буквы или "_". | ||
| 36 | var pattern = @"^[_A-Za-zА-Яа-я]+[_0-9A-Za-zА-Яа-я]*$"; | ||
| 37 | var regex = new System.Text.RegularExpressions.Regex(pattern); | ||
| 38 | if (!regex.IsMatch(name)) | ||
| 39 | return DirRX.DciCore.DciProcessKinds.Resources.NotValidDciNameFormat(name); | ||
| 40 | |||
| 41 | return string.Empty; | ||
| 42 | } | ||
| 43 | |||
| 44 | #endregion | ||
| 45 | |||
| 46 | #region Функции по преобразованию данных из строки в объект. | ||
| 47 | |||
| 48 | /// <summary> | ||
| 49 | /// Преобразовать строку в double. | ||
| 50 | /// </summary> | ||
| 51 | /// <param name="value">Строка.</param> | ||
| 52 | /// <returns>Число типа double или null.</returns> | ||
| 53 | /// <seealso cref="https://docs.microsoft.com/en-us/dotnet/api/system.globalization.numberstyles"></seealso> | ||
| 54 | /// <seealso cref="https://docs.microsoft.com/en-us/dotnet/api/system.globalization.cultureinfo.getcultureinfo"></seealso> | ||
| 55 | /// <seealso cref="https://en.wikipedia.org/wiki/Decimal_separator"></seealso> | ||
| 56 | [Public] | ||
| 57 | public virtual double? StringToDouble(string value) | ||
| 58 | { | ||
| 59 | if (string.IsNullOrWhiteSpace(value)) | ||
| 60 | return null; | ||
| 61 | |||
| 62 | double result; | ||
| 63 | // Попробовать выполнить преобразование в ru-RU культуре. | ||
| 64 | if (!double.TryParse(value, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.GetCultureInfo("ru-RU"), out result) && | ||
| 65 | // Затем попробовать выполнить преобразование в en-US культуре. | ||
| 66 | !double.TryParse(value, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.GetCultureInfo("en-US"), out result) && | ||
| 67 | // Затем попробовать выполнить преобразование в es-ES культуре. | ||
| 68 | !double.TryParse(value, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.GetCultureInfo("es-ES"), out result)) | ||
| 69 | // "NumberStyles.Any" + локаль "ru-RU"/"en-US" покрывает большую часть форматов написания числа - комбинаций из десятичного разделителя ("," и ".") и разделителя групп разрядов (" ", "," и "."). | ||
| 70 | // Еще часть комбинаций закрывается поиском по локали "es-ES" (например "1.234.567,89"), но остаются другие экзотические форматы (например "1 234 567.89") и арабский разделитель "мумаййиз". | ||
| 71 | { | ||
| 72 | return null; | ||
| 73 | } | ||
| 74 | |||
| 75 | return result; | ||
| 76 | } | ||
| 77 | |||
| 78 | /// <summary> | ||
| 79 | /// Преобразовать строку в целое число. | ||
| 80 | /// </summary> | ||
| 81 | /// <param name="value">Строка с числом.</param> | ||
| 82 | /// <returns>Целое число или null.</returns> | ||
| 83 | /// <seealso cref="https://docs.microsoft.com/en-us/dotnet/api/system.globalization.numberstyles"></seealso> | ||
| 84 | /// <seealso cref="https://docs.microsoft.com/en-us/dotnet/api/system.globalization.cultureinfo.getcultureinfo"></seealso> | ||
| 85 | /// <seealso cref="https://en.wikipedia.org/wiki/Decimal_separator"></seealso> | ||
| 86 | [Public] | ||
| 87 | public virtual int? StringToInt(string value) | ||
| 88 | { | ||
| 89 | if (string.IsNullOrWhiteSpace(value)) | ||
| 90 | return null; | ||
| 91 | |||
| 92 | int result; | ||
| 93 | |||
| 94 | // Попробовать выполнить преобразование в ru-RU культуре. | ||
| 95 | if (!int.TryParse(value, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.GetCultureInfo("ru-RU"), out result) && | ||
| 96 | // Затем попробовать выполнить преобразование в en-US культуре. | ||
| 97 | !int.TryParse(value, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.GetCultureInfo("en-US"), out result) && | ||
| 98 | // Затем попробовать выполнить преобразование в es-ES культуре. | ||
| 99 | !int.TryParse(value, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.GetCultureInfo("es-ES"), out result)) | ||
| 100 | { | ||
| 101 | return null; | ||
| 102 | } | ||
| 103 | |||
| 104 | return result; | ||
| 105 | } | ||
| 106 | |||
| 107 | /// <summary> | ||
| 108 | /// Преобразовать статус записи RX из строки в перечисление. | ||
| 109 | /// </summary> | ||
| 110 | /// <param name="stringStatus">Статус записи RX (строка).</param> | ||
| 111 | /// <returns>Статус записи RX (перечисление).</returns> | ||
| 112 | [Public] | ||
| 113 | public virtual Enumeration? ConvertTextRXStatusToRXStatus(string stringStatus) | ||
| 114 | { | ||
| 115 | Enumeration? result = null; | ||
| 116 | |||
| 117 | if (stringStatus == Sungero.CoreEntities.DatabookEntry.Status.Active.Value) | ||
| 118 | return Sungero.CoreEntities.DatabookEntry.Status.Active; | ||
| 119 | |||
| 120 | if (stringStatus == Sungero.CoreEntities.DatabookEntry.Status.Closed.Value) | ||
| 121 | return Sungero.CoreEntities.DatabookEntry.Status.Closed; | ||
| 122 | |||
| 123 | return result; | ||
| 124 | } | ||
| 125 | |||
| 126 | /// <summary> | ||
| 127 | /// Преобразовать состояние записи D5 в статус записи RX (перечисление). | ||
| 128 | /// </summary> | ||
| 129 | /// <param name="d5Status">Состояния записи из D5.</param> | ||
| 130 | /// <returns>Статус записи RX.</returns> | ||
| 131 | [Public] | ||
| 132 | public virtual Enumeration? ConvertD5StatusToRXStatus(string d5Status) | ||
| 133 | { | ||
| 134 | Enumeration? result = null; | ||
| 135 | |||
| 136 | if (d5Status == Constants.Module.D5StatusName.Active) | ||
| 137 | return Sungero.CoreEntities.DatabookEntry.Status.Active; | ||
| 138 | |||
| 139 | if (d5Status == Constants.Module.D5StatusName.Closed) | ||
| 140 | return Sungero.CoreEntities.DatabookEntry.Status.Closed; | ||
| 141 | |||
| 142 | return result; | ||
| 143 | } | ||
| 144 | |||
| 145 | /// <summary> | ||
| 146 | /// Раскодировать строку из base64. | ||
| 147 | /// </summary> | ||
| 148 | /// <param name="value">Строка в base64.</param> | ||
| 149 | /// <returns>Строка.</returns> | ||
| 150 | [Public] | ||
| 151 | public virtual string Base64ToString(string value) | ||
| 152 | { | ||
| 153 | var b = Convert.FromBase64String(value); | ||
| 154 | var strOriginal = System.Text.Encoding.UTF8.GetString(b); | ||
| 155 | return strOriginal; | ||
| 156 | } | ||
| 157 | |||
| 158 | #endregion | ||
| 159 | |||
| 160 | #region Функции по преобразованию данных в строку. | ||
| 161 | |||
| 162 | /// <summary> | ||
| 163 | /// Преобразовать статус записи RX в состояние записи D5. | ||
| 164 | /// </summary> | ||
| 165 | /// <param name="rxStatus">Статус записи RX.</param> | ||
| 166 | /// <returns>Состояние записи в D5.</returns> | ||
| 167 | [Public] | ||
| 168 | public virtual string ConvertRXStatusToD5Status(Enumeration? rxStatus) | ||
| 169 | { | ||
| 170 | var result = string.Empty; | ||
| 171 | |||
| 172 | if (rxStatus == Sungero.CoreEntities.DatabookEntry.Status.Active) | ||
| 173 | return Constants.Module.D5StatusName.Active; | ||
| 174 | |||
| 175 | if (rxStatus == Sungero.CoreEntities.DatabookEntry.Status.Closed) | ||
| 176 | return Constants.Module.D5StatusName.Closed; | ||
| 177 | |||
| 178 | return result; | ||
| 179 | } | ||
| 180 | |||
| 181 | /// <summary> | ||
| 182 | /// Закодировать строку в base64. | ||
| 183 | /// </summary> | ||
| 184 | /// <param name="value">Строка.</param> | ||
| 185 | /// <returns>Закодированная строка.</returns> | ||
| 186 | [Public] | ||
| 187 | public virtual string StringToBase64(string value) | ||
| 188 | { | ||
| 189 | var b = System.Text.Encoding.UTF8.GetBytes(value); | ||
| 190 | var strModified = Convert.ToBase64String(b); | ||
| 191 | return strModified; | ||
| 192 | } | ||
| 193 | |||
| 194 | #endregion | ||
| 195 | |||
| 196 | } | ||
| 197 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 4 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 5 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 6 | <xsd:complexType> | ||
| 7 | <xsd:choice maxOccurs="unbounded"> | ||
| 8 | <xsd:element name="metadata"> | ||
| 9 | <xsd:complexType> | ||
| 10 | <xsd:sequence> | ||
| 11 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 12 | </xsd:sequence> | ||
| 13 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 14 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 15 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 16 | <xsd:attribute ref="xml:space" /> | ||
| 17 | </xsd:complexType> | ||
| 18 | </xsd:element> | ||
| 19 | <xsd:element name="assembly"> | ||
| 20 | <xsd:complexType> | ||
| 21 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 22 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 23 | </xsd:complexType> | ||
| 24 | </xsd:element> | ||
| 25 | <xsd:element name="data"> | ||
| 26 | <xsd:complexType> | ||
| 27 | <xsd:sequence> | ||
| 28 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 29 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 30 | </xsd:sequence> | ||
| 31 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 32 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 33 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 34 | <xsd:attribute ref="xml:space" /> | ||
| 35 | </xsd:complexType> | ||
| 36 | </xsd:element> | ||
| 37 | <xsd:element name="resheader"> | ||
| 38 | <xsd:complexType> | ||
| 39 | <xsd:sequence> | ||
| 40 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 41 | </xsd:sequence> | ||
| 42 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 43 | </xsd:complexType> | ||
| 44 | </xsd:element> | ||
| 45 | </xsd:choice> | ||
| 46 | </xsd:complexType> | ||
| 47 | </xsd:element> | ||
| 48 | </xsd:schema> | ||
| 49 | <resheader name="resmimetype"> | ||
| 50 | <value>text/microsoft-resx</value> | ||
| 51 | </resheader> | ||
| 52 | <resheader name="version"> | ||
| 53 | <value>2.0</value> | ||
| 54 | </resheader> | ||
| 55 | <resheader name="reader"> | ||
| 56 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 57 | </resheader> | ||
| 58 | <resheader name="writer"> | ||
| 59 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 60 | </resheader> | ||
| 61 | <data name="DisplayName" xml:space="preserve"> | ||
| 62 | <value>Межсистемное взаимодействие</value> | ||
| 63 | </data> | ||
| 64 | <data name="CoverTitle" xml:space="preserve"> | ||
| 65 | <value>Механизмы межсистемного взаимодействия</value> | ||
| 66 | </data> | ||
| 67 | <data name="CoverGroup_GroupSettings" xml:space="preserve"> | ||
| 68 | <value>Настройки</value> | ||
| 69 | </data> | ||
| 70 | <data name="CoverDescription" xml:space="preserve"> | ||
| 71 | <value>Модуль предназначен для организации сквозных бизнес-процессов и синхронизации данных между системами</value> | ||
| 72 | </data> | ||
| 73 | <data name="CoverAction_Settings" xml:space="preserve"> | ||
| 74 | <value>Настройки DCI</value> | ||
| 75 | </data> | ||
| 76 | <data name="CoverDescription_Settings" xml:space="preserve"> | ||
| 77 | <value>Основные параметры для работы с модулем</value> | ||
| 78 | </data> | ||
| 79 | <data name="CoverDescription_PingMessage" xml:space="preserve"> | ||
| 80 | <value>Отправка тестового сообщения во внешнюю систему для проверки связи</value> | ||
| 81 | </data> | ||
| 82 | <data name="CoverAction_PingMessage" xml:space="preserve"> | ||
| 83 | <value>Отправить тестовое сообщение</value> | ||
| 84 | </data> | ||
| 85 | <data name="AsyncHandler_Description_a03678a5178b4a4f9c0efb5d2ddbef33" xml:space="preserve"> | ||
| 86 | <value>Получить и обработать входящее сообщение DCI</value> | ||
| 87 | </data> | ||
| 88 | <data name="JobDisplayName_c22dcae54d534637a2b8136f4e75666d" xml:space="preserve"> | ||
| 89 | <value>Межсистемное взаимодействие. Отправка изменений во внешнюю систему</value> | ||
| 90 | </data> | ||
| 91 | <data name="JobDescription_c22dcae54d534637a2b8136f4e75666d" xml:space="preserve"> | ||
| 92 | <value>Выполняет поиск сущностей системы, которые были изменены с моменты последней синхронизации</value> | ||
| 93 | </data> | ||
| 94 | <data name="AsyncHandler_Description_76d6a6af4016471da784780ffaf23255" xml:space="preserve"> | ||
| 95 | <value>Найти изменения типа сущности и отправить исходящее сообщение DCI</value> | ||
| 96 | </data> | ||
| 97 | <data name="CoverTab_Tab" xml:space="preserve"> | ||
| 98 | <value>Tab</value> | ||
| 99 | </data> | ||
| 100 | <data name="CoverAction_DciProcessKinds" xml:space="preserve"> | ||
| 101 | <value>Виды межсистемных процессов</value> | ||
| 102 | </data> | ||
| 103 | <data name="CoverDescription_DciProcessKinds" xml:space="preserve"> | ||
| 104 | <value>Открыть список межсистемных процессов</value> | ||
| 105 | </data> | ||
| 106 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <root> | ||
| 3 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
| 4 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
| 5 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
| 6 | <xsd:complexType> | ||
| 7 | <xsd:choice maxOccurs="unbounded"> | ||
| 8 | <xsd:element name="metadata"> | ||
| 9 | <xsd:complexType> | ||
| 10 | <xsd:sequence> | ||
| 11 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
| 12 | </xsd:sequence> | ||
| 13 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
| 14 | <xsd:attribute name="type" type="xsd:string" /> | ||
| 15 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
| 16 | <xsd:attribute ref="xml:space" /> | ||
| 17 | </xsd:complexType> | ||
| 18 | </xsd:element> | ||
| 19 | <xsd:element name="assembly"> | ||
| 20 | <xsd:complexType> | ||
| 21 | <xsd:attribute name="alias" type="xsd:string" /> | ||
| 22 | <xsd:attribute name="name" type="xsd:string" /> | ||
| 23 | </xsd:complexType> | ||
| 24 | </xsd:element> | ||
| 25 | <xsd:element name="data"> | ||
| 26 | <xsd:complexType> | ||
| 27 | <xsd:sequence> | ||
| 28 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 29 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
| 30 | </xsd:sequence> | ||
| 31 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
| 32 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
| 33 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
| 34 | <xsd:attribute ref="xml:space" /> | ||
| 35 | </xsd:complexType> | ||
| 36 | </xsd:element> | ||
| 37 | <xsd:element name="resheader"> | ||
| 38 | <xsd:complexType> | ||
| 39 | <xsd:sequence> | ||
| 40 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
| 41 | </xsd:sequence> | ||
| 42 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
| 43 | </xsd:complexType> | ||
| 44 | </xsd:element> | ||
| 45 | </xsd:choice> | ||
| 46 | </xsd:complexType> | ||
| 47 | </xsd:element> | ||
| 48 | </xsd:schema> | ||
| 49 | <resheader name="resmimetype"> | ||
| 50 | <value>text/microsoft-resx</value> | ||
| 51 | </resheader> | ||
| 52 | <resheader name="version"> | ||
| 53 | <value>2.0</value> | ||
| 54 | </resheader> | ||
| 55 | <resheader name="reader"> | ||
| 56 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 57 | </resheader> | ||
| 58 | <resheader name="writer"> | ||
| 59 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
| 60 | </resheader> | ||
| 61 | <data name="CoverTitle" xml:space="preserve"> | ||
| 62 | <value>Механизмы межсистемного взаимодействия</value> | ||
| 63 | </data> | ||
| 64 | <data name="CoverGroup_GroupSettings" xml:space="preserve"> | ||
| 65 | <value>Настройки</value> | ||
| 66 | </data> | ||
| 67 | <data name="CoverAction_Settings" xml:space="preserve"> | ||
| 68 | <value>Настройки DCI</value> | ||
| 69 | </data> | ||
| 70 | <data name="DisplayName" xml:space="preserve"> | ||
| 71 | <value>Межсистемное взаимодействие</value> | ||
| 72 | </data> | ||
| 73 | <data name="CoverDescription" xml:space="preserve"> | ||
| 74 | <value>Модуль предназначен для организации сквозных бизнес-процессов и синхронизации данных между системами</value> | ||
| 75 | </data> | ||
| 76 | <data name="CoverAction_PingMessage" xml:space="preserve"> | ||
| 77 | <value>Отправить тестовое сообщение</value> | ||
| 78 | </data> | ||
| 79 | <data name="CoverDescription_PingMessage" xml:space="preserve"> | ||
| 80 | <value>Отправка тестового сообщения во внешнюю систему для проверки связи</value> | ||
| 81 | </data> | ||
| 82 | <data name="AsyncHandler_Description_a03678a5178b4a4f9c0efb5d2ddbef33" xml:space="preserve"> | ||
| 83 | <value>Получить и обработать входящее сообщение DCI</value> | ||
| 84 | </data> | ||
| 85 | <data name="AsyncHandler_Description_76d6a6af4016471da784780ffaf23255" xml:space="preserve"> | ||
| 86 | <value>Найти изменения типа сущности и отправить исходящее сообщение DCI</value> | ||
| 87 | </data> | ||
| 88 | <data name="JobDisplayName_c22dcae54d534637a2b8136f4e75666d" xml:space="preserve"> | ||
| 89 | <value>Межсистемное взаимодействие. Отправка изменений во внешнюю систему</value> | ||
| 90 | </data> | ||
| 91 | <data name="CoverAction_DciProcessKinds" xml:space="preserve"> | ||
| 92 | <value>Виды межсистемных процессов</value> | ||
| 93 | </data> | ||
| 94 | <data name="CoverDescription_DciProcessKinds" xml:space="preserve"> | ||
| 95 | <value>Открыть список межсистемных процессов</value> | ||
| 96 | </data> | ||
| 97 | </root> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
-
Please register or sign in to post a comment