Freigeben über


ModuleSubstitution Table

Die Tabelle "ModuleSubstitution" gibt die konfigurierbaren Felder einer Moduldatenbank an und stellt eine Vorlage für die Konfiguration der einzelnen Felder bereit. Das Benutzer- oder Zusammenführungstool kann diese Tabelle abfragen, um zu bestimmen, welche Konfigurationsvorgänge durchgeführt werden sollen. Diese Tabelle wird nicht mit der Zieldatenbank zusammengeführt.

Die folgenden Tabellen können keine konfigurierbaren Felder enthalten und dürfen nicht in dieser Tabelle aufgeführt werden:

ModuleSubstitution-Tabelle

ModuleConfiguration-Tabelle

ModuleExclusion-Tabelle

ModuleSignature-Tabelle

Die Tabelle "ModuleSubstitution" enthält die folgenden Spalten.

Spalte Art Schlüssel Nullable
Tisch Bezeichner Y N
Rudern Y N
Spalte Bezeichner Y N
Wert N Y

 

Spalten

Tabelle

Diese Spalte gibt den Namen der Tabelle an, die in der Moduldatenbank geändert wird.

zeile

Dieses Feld gibt die Primärschlüssel der Zielzeile in der Tabelle an, die in der Spalte "Tabelle" benannt ist. Mehrere Primärschlüssel werden durch Semikolons getrennt. Zielzeilen werden zur Änderung ausgewählt, bevor Änderungen an der Zieltabelle vorgenommen werden. Wenn ein Datensatz in der Tabelle "ModuleSubstitution" das Primärschlüsselfeld einer Zielzeile ändert, werden andere Datensätze in der ModuleSubstitutionstabelle basierend auf den ursprünglichen Primärschlüsseldaten angewendet, nicht auf die Folge von Primärschlüsselersetzungen. Die Reihenfolge der Zeilenersetzung ist nicht definiert.

Werte in dieser Spalte befinden sich immer im speziellen FORMAT CMSM. Ein Literal-Semikolon (';') oder gleichheitszeichen ('=') kann durch Voranstellen des Zeichens mit einem umgekehrten Schrägstrich hinzugefügt werden. '\'. Ein Nullwert für einen Schlüssel wird durch einen Nullwert, ein führendes Semikolon, zwei aufeinander folgende Semikolons oder ein nachfolgendes Semikolon gekennzeichnet, je nachdem, ob der Nullwert ein alleiniger, erster, mittlerer oder letzter Schlüsselspaltenwert ist.

Spalte

Dieses Feld gibt die Zielspalte in der Zeile an, die in der Spalte Zeile benannt ist. Wenn mehrere Zeilen in der ModuleSubstitution-Tabelle unterschiedliche Spalten derselben Zielzeile ändern, werden alle Spaltenersetzungen ausgeführt, bevor die geänderte Zeile in die Datenbank eingefügt wird. Die Reihenfolge der Spaltenersetzung ist nicht definiert.

wert

Diese Spalte enthält eine Zeichenfolge, die eine Formatierungsvorlage für die Daten bereitstellt, die in das zielfeld ersetzt werden, das durch Tabelle, Zeile und Spalte angegeben wird. Wenn eine Ersetzungszeichenfolge des Formulars [=ItemA] gefunden wird, wird die Zeichenfolge, einschließlich der eckigen Zeichen, durch den Wert für das konfigurierbare "ItemA" ersetzt. Das konfigurierbare Element "ItemA" wird in der Spalte "Name" der ModuleConfiguration-Tabelle angegeben, und der Wert wird vom Seriendrucktool bereitgestellt. Wenn das Seriendrucktool ablehnt, einen Wert für jedes Element in einer Ersetzungszeichenfolge bereitzustellen, wird der in der Spalte "DefaultValue" der ModuleConfiguration-Tabelle angegebene Standardwert ersetzt. Wenn eine Zeichenfolge auf ein Element verweist, das nicht in der ModuleConfiguration-Tabelle enthalten ist, schlägt die Zusammenführung fehl.

  • Diese Spalte verwendet CMSM spezialformat. Ein Literal-Semikolon (';') oder gleichheitszeichen ('=') kann der Tabelle hinzugefügt werden, indem dem Zeichen ein umgekehrter Schrägstrich vorangestellt wird. '\'.
  • Das Feld "Wert" kann mehrere Ersetzungszeichenfolgen enthalten. Beispielsweise ist die Konfiguration der Elemente "Food1" und "Food2" in der Zeichenfolge "[=Food1] gut, aber [=Food2] ist besser, weil [=Lebensmittel2] nahrhafter ist."
  • Ersetzungszeichenfolgen dürfen nicht geschachtelt werden. Die Vorlage "[=AB[=CDE]]" ist ungültig.
  • Wenn das Feld "Wert" als NULL ausgewertet wird und das Zielfeld nicht nullwertet, schlägt der Seriendruck fehl, und ein Fehlerobjekt vom Typ "msmErrorBadNullSubstitution" wird erstellt und der Fehlerliste hinzugefügt. Ausführliche Informationen finden Sie in den in get_Type Functionbeschriebenen Fehlertypen.
  • Wenn das Feld "Wert" als NULL-GUID ausgewertet wird: {00000000-0000-0000-0000-000000000000}, wird die NULL-GUID durch den Namen des Features ersetzt, bevor die Zeile mit dem Modul zusammengeführt wird. Ausführliche Informationen finden Sie unter Verweisen auf Features in Seriendruckmodulen.
  • Die Vorlage im Feld "Wert" wird ausgewertet, bevor sie in das Zielfeld eingefügt wird. Die Ersetzung in eine Zeile erfolgt vor dem Ersetzen von Features.
  • Wenn die Spalte "Wert" eine Zeichenfolge mit nur ganzzahligen Zeichen (mit optionalem + oder -) auswertet, wird die Zeichenfolge in eine ganze Zahl konvertiert, bevor sie in ein Zielfeld des Integer Format Typeersetzt wird. Wenn die Vorlage zu einer Zeichenfolge ausgewertet wird, die nicht nur aus ganzzahligen Zeichen (und optional +oder -) besteht, kann das Ergebnis nicht in ein ganzzahliges Zielfeld ersetzt werden. Wenn Sie versuchen, eine nicht ganze Zahl in ein ganzzahliges Feld einzufügen, schlägt der Seriendruck fehl und fügt der Fehlerliste ein Fehlerobjekt msmErrorBadSubstitutionType hinzu.
  • Wenn die in den Feldern "Tabelle" und "Spalte" angegebene Zielspalte ein Textformattypist und die Auswertung des Felds "Wert" zu einem Integer Format Typeführt, wird eine Dezimaldarstellung der Zahl in das Zieltextfeld eingefügt.
  • Wenn das Zielfeld ein Integer Format Typeist und das Feld "Wert" aus einer nicht getrennten Liste von Elementen in Bitfield Formatbesteht, wird der Wert im Zielfeld mit dem bitweisen UND Operator mit der Umkehrung des bitweisen OR aller Maskenwerte aus den Elementen kombiniert, anschließend wird der bitweise ODER Operator mit den einzelnen Ganzzahl- oder Bitfeldelementen kombiniert, wenn sie durch die entsprechenden Maskenwerte maskiert werden. Im Wesentlichen legt dies explizit die Bits aus den Eigenschaften auf die bereitgestellten Werte fest, lässt aber alle anderen Bits in der Zelle allein.
  • Wenn das Feld "Wert" zu einem Schlüsselformattypausgewertet wird und ein Schlüssel in einer Tabelle ist, in der mehrere Primärschlüssel verwendet werden, kann auf den Elementnamen ein Semikolon und ein ganzzahliger Wert folgen, der den 1-basierten Index in der Gruppe von Werten angibt, die zusammen einen Primärschlüssel bilden. Wenn keine ganze Zahl angegeben wird, wird der Wert 1 verwendet. Beispielsweise enthält die Steuerelementtabelle zwei Primärschlüsselspalten, Dialog_ und Steuerelement. Der Wert eines Elements "Element1", das ein Schlüssel in der Steuerelementtabelle ist, entspricht dem Formular "DialogName". ControlName", wobei DialogName der Wert in der Dialog_ Tabelle ist und ControlName der Wert in der Spalte "Steuerelement" ist. Um nur ControlName zu ersetzen, ersetzen Sie die Ersetzungszeichenfolge [=Item1; 2] sollte verwendet werden.

Bemerkungen

Die Tabelle "ModuleSubstition" wird von konfigurierbaren Zusammenführungsmodulenverwendet. Mergemod.dll Version 2.0 oder höher ist erforderlich, um ein konfigurierbares Seriendruckmodul zu erstellen.

Um die Kompatibilität mit Versionen von Mergemod.dll vor Version 2.0 sicherzustellen, sollte die ModuleConfiguration-Tabelle und ModuleSubstitutionstabellen in die ModuleIgnoreTable-Tabelle jedes Moduls aufgenommen werden.