PMS32 Online- Hilfereferenz

FIELD.I27

Materialanforderung -Pos


Felddefinition: I27.DATGPL
Feldname............ DATGPL
Feldtyp............. D
Feldgröße........... 8
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ignorieren
Erweiterter Typ..... TID
Feldbezeichnung..... geplantes Datum
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.DATGPL

Eingabe des Datums oder Auswahl in der Kalendermaske mit STRG+F2 oder durch Mausklick auf den Button rechts neben dem Datumsfeld.

Feldhilfe: I27.DATGPL

In dieses Feld wird das Datum eingetragen, daß sich aus Bestelldatum plus Wiederbeschaffungszeit ergibt. Sie können nichts ändern.

Beispielcode: I27.DATGPL


Felddefinition: I27.GEBUCHT
Feldname............ GEBUCHT
Feldtyp............. L
Feldgröße........... 1
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ignorieren
Erweiterter Typ..... LOG
Feldbezeichnung..... Gebucht
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.GEBUCHT

Gebucht. Dieses Feld stellt den Status einer Position oder eines Vorgangs dar.

Feldhilfe: I27.GEBUCHT

Gebucht. Dieses Feld stellt den Status einer Position oder eines Vorgangs dar. Die Einstellung kann vom Benutzer "meistens" nicht verändert werden. Die Variable ist eine vom System gesetzte Größe. Der Vorgang oder die Positon wurde verbucht.

Beispielcode: I27.GEBUCHT
*/ Stati in den einzelnen Tabellen:
d42	=> Die Materialprüfung wurde verbucht. Dispositonseinträge wurden geändert.
d44	=> Die Eingangrechnung wurde verbucht
d45	=> Die Spediteursrechnung wurde verbucht
d46	=> Die Lieferantengutschrift wurde verbucht
d55	=> Kostenwerte wurden auf die Materialpositionen verteilt
e10	=> Die Lieferscheinmengen wurden vom Projektlager abgebucht
i27	=> Die Positon der automatischen Materialanforderung wurde verbucht d.h., in die Disposition übergeben
i29	=> Die Position der manuellen Materialanforderung wurde verbucht d.h., in die Disposition übergeben
i30	=> Der Lagerzugang wurde "komplett" verbucht
i32	=> Der Lagerabgang wurde "komplett" verbucht

Felddefinition: I27.IDB01
Feldname............ IDB01
Feldtyp............. C
Feldgröße........... 8
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ..... LU
Feldbezeichnung..... Artikel
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.IDB01

Relationales Feld (Lookup) in den Artikelstamm. Der Feldinhalt wird meistens durch F2 bzw. F3 - Auswahl gefüllt.

Feldhilfe: I27.IDB01

Relationales Feld zum Artikelstamm. Dieses Feld ist ein Lookup- relationales Feld in den Artikelstamm (B01). Bei SQL Abfragen wird dieses Feld zur Verknüpfung der eigentlichen Tabelle mit dem Artikelstamm benötigt. Ein Beispiel: SELECT b01.artnr, i33.menge_i FROM i33, b01 WHERE i33.idb01 = b01.idb01 AND ...

Beispielcode: I27.IDB01
*/ Dieses Feld ist ein relationales Feld zur Tabelle: B01 - Artikelstamm

*/ Evetuell ist dieses Feld NICHT gefüllt, dann besteht keine relationale Verbindung zwischen I27 und B01...
*/ Eine SQL - Abfrage zum Ermitteln von Quelle und Ziel:
SELECT I27.IDB01 AS _Quelle, B01.IDB01 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") LEFT OUTER JOIN (My.Clients.Path.cDbfDir+"B01.DBF") ON I27.IDB01=B01.IDB01 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Der obige Cursor enthält alle Datensätze der Tabelle I27 im Feld _Quelle und nur vorhandene Datensätze der Tabelle B01
*/ Besteht keine relationale Verbindung, so ist der Inhalt der Cursorspalte _Ziel = .NULL.

*/ Die 'gleiche' Abfrage in der NUR relationale Daten vonhanden sind:
SELECT I27.IDB01 AS _Quelle, B01.IDB01 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") INNER JOIN (My.Clients.Path.cDbfDir+"B01.DBF") ON I27.IDB01=B01.IDB01 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Geht auch so...
SELECT I27.IDB01 AS _Quelle, B01.IDB01 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") , (My.Clients.Path.cDbfDir+"B01.DBF") ;
	WHERE I27.IDB01=B01.IDB01
	AND   I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Es gibt auch einen Zugriff über die My - Struktur, die ein Tabellen-Objekt zurückgibt...
LOCAL loB01 AS Object
loB01 = My.Bussines.Strain.Misc.oB01[I27.IDB01]
IF !EMPTY(loB01.IDB01)
	*/ Dann wurde der Datensatz in der Tabelle B01 gefunden!
	*/ Weiterer Code kann hier stehen...
ENDIF

Felddefinition: I27.IDB01K
Feldname............ IDB01K
Feldtyp............. C
Feldgröße........... 8
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ..... LU
Feldbezeichnung..... Baugruppenkopf
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.IDB01K

Relationales Feld (Lookup) in den Artikelstamm. Der Feldinhalt wird meistens durch F2 bzw. F3 - Auswahl gefüllt.

Feldhilfe: I27.IDB01K

Relationales Feld zum Artikelstamm. Dieses Feld ist ein Lookup- relationales Feld in den Artikelstamm (B01). Bei SQL Abfragen wird dieses Feld zur Verknüpfung der eigentlichen Tabelle mit dem Artikelstamm benötigt. Ein Beispiel: SELECT b01.artnr, i33.menge_i FROM i33, b01 WHERE i33.idb01 = b01.idb01 AND ...

Beispielcode: I27.IDB01K
*/ Dieses Feld ist ein relationales Feld zur Tabelle: B01 - Artikelstamm

*/ Evetuell ist dieses Feld NICHT gefüllt, dann besteht keine relationale Verbindung zwischen I27 und B01...
*/ Eine SQL - Abfrage zum Ermitteln von Quelle und Ziel:
SELECT I27.IDB01K AS _Quelle, B01.IDB01 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") LEFT OUTER JOIN (My.Clients.Path.cDbfDir+"B01.DBF") ON I27.IDB01K=B01.IDB01 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Der obige Cursor enthält alle Datensätze der Tabelle I27 im Feld _Quelle und nur vorhandene Datensätze der Tabelle B01
*/ Besteht keine relationale Verbindung, so ist der Inhalt der Cursorspalte _Ziel = .NULL.

*/ Die 'gleiche' Abfrage in der NUR relationale Daten vonhanden sind:
SELECT I27.IDB01K AS _Quelle, B01.IDB01 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") INNER JOIN (My.Clients.Path.cDbfDir+"B01.DBF") ON I27.IDB01K=B01.IDB01 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Geht auch so...
SELECT I27.IDB01K AS _Quelle, B01.IDB01 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") , (My.Clients.Path.cDbfDir+"B01.DBF") ;
	WHERE I27.IDB01K=B01.IDB01
	AND   I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Es gibt auch einen Zugriff über die My - Struktur, die ein Tabellen-Objekt zurückgibt...
LOCAL loB01 AS Object
loB01 = My.Bussines.Strain.Misc.oB01[I27.IDB01K]
IF !EMPTY(loB01.IDB01)
	*/ Dann wurde der Datensatz in der Tabelle B01 gefunden!
	*/ Weiterer Code kann hier stehen...
ENDIF

Felddefinition: I27.IDC31
Feldname............ IDC31
Feldtyp............. C
Feldgröße........... 6
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ..... LU
Feldbezeichnung..... Kostenträger
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.IDC31

Lookup in : Kostenträger (C31). Eine Änderung erfolgt durch F3 - Auswahl. Der Srung zu Stammtabelle erfolgt mit F2

Feldhilfe: I27.IDC31

Lookup- bzw. relationale Felder werden benötigt um Tabellen mittels SQL Select oder einer Relation zu verbinden. Durch die Namensgebung der Lookupfelder kann aus dem Feldnamen "meistens" die Zieltabelle der Relation bestimmt werden. Alle Relationen werden in PMS32 über sogenannte ID- Felder hergestellt, wobei die Zieltabelle ab der dritten Stelle des Feldnamens bis zur fünften Stelle des Feldnames angegeben ist. Aus ein paar Beispielen: D51.IDB01 => B01, I40.IDC42VKB => C42, I50.IDC25B => C25. Mit der Formel aus dem Codeblock kann zu "fast" allen ID Feldern die entsprechende Zieltabelle ermittelt werden. Spezial- Lookupfelder wie z.B.: I20.IDZWI oder I23.IDAUFA... benötigen zur Bestimmung die entsprechende IP, mit der über die Systemtabelle Y01 die entsprechende Zieltabelle ermittelt werden kann.

Beispielcode: I27.IDC31
*/ Dieses Feld ist ein relationales Feld zur Tabelle: C31 - Kostenträger

*/ Evetuell ist dieses Feld NICHT gefüllt, dann besteht keine relationale Verbindung zwischen I27 und C31...
*/ Eine SQL - Abfrage zum Ermitteln von Quelle und Ziel:
SELECT I27.IDC31 AS _Quelle, C31.IDC31 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") LEFT OUTER JOIN (My.Clients.Path.cDbfDir+"C31.DBF") ON I27.IDC31=C31.IDC31 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Der obige Cursor enthält alle Datensätze der Tabelle I27 im Feld _Quelle und nur vorhandene Datensätze der Tabelle C31
*/ Besteht keine relationale Verbindung, so ist der Inhalt der Cursorspalte _Ziel = .NULL.

*/ Die 'gleiche' Abfrage in der NUR relationale Daten vonhanden sind:
SELECT I27.IDC31 AS _Quelle, C31.IDC31 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") INNER JOIN (My.Clients.Path.cDbfDir+"C31.DBF") ON I27.IDC31=C31.IDC31 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Geht auch so...
SELECT I27.IDC31 AS _Quelle, C31.IDC31 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") , (My.Clients.Path.cDbfDir+"C31.DBF") ;
	WHERE I27.IDC31=C31.IDC31
	AND   I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Es gibt auch einen Zugriff über die My - Struktur, die ein Tabellen-Objekt zurückgibt...
LOCAL loC31 AS Object
loC31 = My.Bussines.Strain.Misc.oC31[I27.IDC31]
IF !EMPTY(loC31.IDC31)
	*/ Dann wurde der Datensatz in der Tabelle C31 gefunden!
	*/ Weiterer Code kann hier stehen...
ENDIF

Felddefinition: I27.IDC66
Feldname............ IDC66
Feldtyp............. C
Feldgröße........... 6
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ..... LU
Feldbezeichnung..... Lager
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.IDC66

Relationales Feld (Lookup) in die Lagerorttabelle. Der Feldinhalt wird meistens durch F2 bzw. F3 - Auswahl gefüllt.

Feldhilfe: I27.IDC66

Relationales Feld zur Lagerorttabelle. Dieses Feld ist ein Lookup- relationales Feld in die Lagerorttabelle (C66). Bei SQL Abfragen wird dieses Feld zur Verknüpfung der eigentlichen Tabelle mit der Lagerorttabelle benötigt. Ein Beispiel: SELECT c66.match, i20.menge_s FROM i20,c66 WHERE i20.idc66 = c66.idc66 AND ...

Beispielcode: I27.IDC66
*/ Dieses Feld ist ein relationales Feld zur Tabelle: C66 - Lagerorte

*/ Evetuell ist dieses Feld NICHT gefüllt, dann besteht keine relationale Verbindung zwischen I27 und C66...
*/ Eine SQL - Abfrage zum Ermitteln von Quelle und Ziel:
SELECT I27.IDC66 AS _Quelle, C66.IDC66 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") LEFT OUTER JOIN (My.Clients.Path.cDbfDir+"C66.DBF") ON I27.IDC66=C66.IDC66 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Der obige Cursor enthält alle Datensätze der Tabelle I27 im Feld _Quelle und nur vorhandene Datensätze der Tabelle C66
*/ Besteht keine relationale Verbindung, so ist der Inhalt der Cursorspalte _Ziel = .NULL.

*/ Die 'gleiche' Abfrage in der NUR relationale Daten vonhanden sind:
SELECT I27.IDC66 AS _Quelle, C66.IDC66 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") INNER JOIN (My.Clients.Path.cDbfDir+"C66.DBF") ON I27.IDC66=C66.IDC66 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Geht auch so...
SELECT I27.IDC66 AS _Quelle, C66.IDC66 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") , (My.Clients.Path.cDbfDir+"C66.DBF") ;
	WHERE I27.IDC66=C66.IDC66
	AND   I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Es gibt auch einen Zugriff über die My - Struktur, die ein Tabellen-Objekt zurückgibt...
LOCAL loC66 AS Object
loC66 = My.Bussines.Strain.Misc.oC66[I27.IDC66]
IF !EMPTY(loC66.IDC66)
	*/ Dann wurde der Datensatz in der Tabelle C66 gefunden!
	*/ Weiterer Code kann hier stehen...
ENDIF

Felddefinition: I27.IDI20
Feldname............ IDI20
Feldtyp............. C
Feldgröße........... 8
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ..... LU
Feldbezeichnung..... Disponummer
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.IDI20

Lookup in : Disposition (I20). Eine Änderung erfolgt durch F3 - Auswahl. Der Srung zu Stammtabelle erfolgt mit F2

Feldhilfe: I27.IDI20

Lookup- bzw. relationale Felder werden benötigt um Tabellen mittels SQL Select oder einer Relation zu verbinden. Durch die Namensgebung der Lookupfelder kann aus dem Feldnamen "meistens" die Zieltabelle der Relation bestimmt werden. Alle Relationen werden in PMS32 über sogenannte ID- Felder hergestellt, wobei die Zieltabelle ab der dritten Stelle des Feldnamens bis zur fünften Stelle des Feldnames angegeben ist. Aus ein paar Beispielen: D51.IDB01 => B01, I40.IDC42VKB => C42, I50.IDC25B => C25. Mit der Formel aus dem Codeblock kann zu "fast" allen ID Feldern die entsprechende Zieltabelle ermittelt werden. Spezial- Lookupfelder wie z.B.: I20.IDZWI oder I23.IDAUFA... benötigen zur Bestimmung die entsprechende IP, mit der über die Systemtabelle Y01 die entsprechende Zieltabelle ermittelt werden kann.

Beispielcode: I27.IDI20
*/ Dieses Feld ist ein relationales Feld zur Tabelle: I20 - Disposition

*/ Evetuell ist dieses Feld NICHT gefüllt, dann besteht keine relationale Verbindung zwischen I27 und I20...
*/ Eine SQL - Abfrage zum Ermitteln von Quelle und Ziel:
SELECT I27.IDI20 AS _Quelle, I20.IDI20 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") LEFT OUTER JOIN (My.Clients.Path.cDbfDir+"I20.DBF") ON I27.IDI20=I20.IDI20 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Der obige Cursor enthält alle Datensätze der Tabelle I27 im Feld _Quelle und nur vorhandene Datensätze der Tabelle I20
*/ Besteht keine relationale Verbindung, so ist der Inhalt der Cursorspalte _Ziel = .NULL.

*/ Die 'gleiche' Abfrage in der NUR relationale Daten vonhanden sind:
SELECT I27.IDI20 AS _Quelle, I20.IDI20 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") INNER JOIN (My.Clients.Path.cDbfDir+"I20.DBF") ON I27.IDI20=I20.IDI20 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Geht auch so...
SELECT I27.IDI20 AS _Quelle, I20.IDI20 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") , (My.Clients.Path.cDbfDir+"I20.DBF") ;
	WHERE I27.IDI20=I20.IDI20
	AND   I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE

Felddefinition: I27.IDI26
Feldname............ IDI26
Feldtyp............. C
Feldgröße........... 8
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ..... LU
Feldbezeichnung..... autom. Mat.-Anforderung
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.IDI26

Lookup in : Materialanforderung auto (I26). Eine Änderung erfolgt durch F3 - Auswahl. Der Srung zu Stammtabelle erfolgt mit F2

Feldhilfe: I27.IDI26

Lookup- bzw. relationale Felder werden benötigt um Tabellen mittels SQL Select oder einer Relation zu verbinden. Durch die Namensgebung der Lookupfelder kann aus dem Feldnamen "meistens" die Zieltabelle der Relation bestimmt werden. Alle Relationen werden in PMS32 über sogenannte ID- Felder hergestellt, wobei die Zieltabelle ab der dritten Stelle des Feldnamens bis zur fünften Stelle des Feldnames angegeben ist. Aus ein paar Beispielen: D51.IDB01 => B01, I40.IDC42VKB => C42, I50.IDC25B => C25. Mit der Formel aus dem Codeblock kann zu "fast" allen ID Feldern die entsprechende Zieltabelle ermittelt werden. Spezial- Lookupfelder wie z.B.: I20.IDZWI oder I23.IDAUFA... benötigen zur Bestimmung die entsprechende IP, mit der über die Systemtabelle Y01 die entsprechende Zieltabelle ermittelt werden kann.

Beispielcode: I27.IDI26
*/ Dieses Feld ist ein relationales Feld zur Tabelle: I26 - Materialanforderung auto

*/ Evetuell ist dieses Feld NICHT gefüllt, dann besteht keine relationale Verbindung zwischen I27 und I26...
*/ Eine SQL - Abfrage zum Ermitteln von Quelle und Ziel:
SELECT I27.IDI26 AS _Quelle, I26.IDI26 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") LEFT OUTER JOIN (My.Clients.Path.cDbfDir+"I26.DBF") ON I27.IDI26=I26.IDI26 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Der obige Cursor enthält alle Datensätze der Tabelle I27 im Feld _Quelle und nur vorhandene Datensätze der Tabelle I26
*/ Besteht keine relationale Verbindung, so ist der Inhalt der Cursorspalte _Ziel = .NULL.

*/ Die 'gleiche' Abfrage in der NUR relationale Daten vonhanden sind:
SELECT I27.IDI26 AS _Quelle, I26.IDI26 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") INNER JOIN (My.Clients.Path.cDbfDir+"I26.DBF") ON I27.IDI26=I26.IDI26 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Geht auch so...
SELECT I27.IDI26 AS _Quelle, I26.IDI26 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") , (My.Clients.Path.cDbfDir+"I26.DBF") ;
	WHERE I27.IDI26=I26.IDI26
	AND   I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Es gibt auch einen Zugriff über die My - Struktur, die ein Tabellen-Objekt zurückgibt...
LOCAL loI26 AS Object
loI26 = My.Bussines.Strain.Misc.oI26[I27.IDI26]
IF !EMPTY(loI26.IDI26)
	*/ Dann wurde der Datensatz in der Tabelle I26 gefunden!
	*/ Weiterer Code kann hier stehen...
ENDIF

Felddefinition: I27.IDI27
Feldname............ IDI27
Feldtyp............. C
Feldgröße........... 8
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ..... ID
Feldbezeichnung..... ID-Materialanforderung -Pos
Standardwert........ My.Clients.Numbers.GetMoreIds("IDI27",1)
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.IDI27

Primärschlüssel der Tabelle : Materialanforderung -Pos

Feldhilfe: I27.IDI27

Primärfelder einer Tabelle indentifizieren den Datensatz der Tabelle. Der Feldinhalt ist immer eindeutig und kann niemals mehrfach vorkommen. Primärfelder können aus einem Feld der Tabelle oder aus mehreren Feldern der Tabelle bestehen.

Beispielcode: I27.IDI27
*/ Das Feld IDI27 ist das Primärschlüsselfeld der Tabelle I27 - Materialanforderung -Pos
*/ Dieses Feld kann in anderen Tabellen als relationaler Schlüssel zu dieser Tabelle dienen

*/ An einem SQL - Beispiel eines beschreibbaren Cursors...
*/ Die Daten des Cursors können zwar geändert werden, die Änderungen werden jedoch NICHT in die Datenbank zurückgeschrieben!
SELECT I27.* FROM (My.Clients.Path.cDbfDir+"I27.DBF") ;
	WHERE I27.IDI27 = m.idi27 ;
	INTO CURSOR qI27 NOFILTER READWRITE

*/ Werden die Daten über die die Methode _SqlRead() abgerufen, so kann der Pfad als Datenbank-Verweis angegeben werden...
IF poThis._SqlRead([SELECT I27.* FROM CDBFDIR!I27 WHERE IDI27=']+m.idi27+['],"qI27",2)
	*/ Hier könnte Code stehen...
	*/ Siehe auch: My.Clients.SQL.SQLRead(tnDataSession,tcSQLStatement,tcAlias,tvTable)
ENDIF

Felddefinition: I27.IDI27K
Feldname............ IDI27K
Feldtyp............. C
Feldgröße........... 8
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ..... LU
Feldbezeichnung..... Materialanforderungskopf
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.IDI27K

Lookup in : Materialanforderung -Pos (I27). Eine Änderung erfolgt durch F3 - Auswahl. Der Srung zu Stammtabelle erfolgt mit F2

Feldhilfe: I27.IDI27K

Lookup- bzw. relationale Felder werden benötigt um Tabellen mittels SQL Select oder einer Relation zu verbinden. Durch die Namensgebung der Lookupfelder kann aus dem Feldnamen "meistens" die Zieltabelle der Relation bestimmt werden. Alle Relationen werden in PMS32 über sogenannte ID- Felder hergestellt, wobei die Zieltabelle ab der dritten Stelle des Feldnamens bis zur fünften Stelle des Feldnames angegeben ist. Aus ein paar Beispielen: D51.IDB01 => B01, I40.IDC42VKB => C42, I50.IDC25B => C25. Mit der Formel aus dem Codeblock kann zu "fast" allen ID Feldern die entsprechende Zieltabelle ermittelt werden. Spezial- Lookupfelder wie z.B.: I20.IDZWI oder I23.IDAUFA... benötigen zur Bestimmung die entsprechende IP, mit der über die Systemtabelle Y01 die entsprechende Zieltabelle ermittelt werden kann.

Beispielcode: I27.IDI27K
*/ Dieses Feld ist ein relationales Feld zur Tabelle: I27 - Materialanforderung -Pos

*/ Evetuell ist dieses Feld NICHT gefüllt, dann besteht keine relationale Verbindung zwischen I27 und I27...
*/ Eine SQL - Abfrage zum Ermitteln von Quelle und Ziel:
SELECT I27.IDI27K AS _Quelle, I27.IDI27 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") LEFT OUTER JOIN (My.Clients.Path.cDbfDir+"I27.DBF") ON I27.IDI27K=I27.IDI27 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Der obige Cursor enthält alle Datensätze der Tabelle I27 im Feld _Quelle und nur vorhandene Datensätze der Tabelle I27
*/ Besteht keine relationale Verbindung, so ist der Inhalt der Cursorspalte _Ziel = .NULL.

*/ Die 'gleiche' Abfrage in der NUR relationale Daten vonhanden sind:
SELECT I27.IDI27K AS _Quelle, I27.IDI27 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") INNER JOIN (My.Clients.Path.cDbfDir+"I27.DBF") ON I27.IDI27K=I27.IDI27 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Geht auch so...
SELECT I27.IDI27K AS _Quelle, I27.IDI27 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") , (My.Clients.Path.cDbfDir+"I27.DBF") ;
	WHERE I27.IDI27K=I27.IDI27
	AND   I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE

Felddefinition: I27.IDK10
Feldname............ IDK10
Feldtyp............. C
Feldgröße........... 8
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ..... LU
Feldbezeichnung..... Projekt
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.IDK10

Relationales Feld (Lookup) in die Projekttabelle. Der Feldinhalt wird meistens durch F2 bzw. F3 - Auswahl gefüllt.

Feldhilfe: I27.IDK10

Relationales Feld zur Projekttabelle. Dieses Feld ist ein Lookup- relationales Feld in die Projekttabelle (K10). Bei SQL Abfragen wird dieses Feld zur Verknüpfung der eigentlichen Tabelle mit der Projekttabelle benötigt. Ein Beispiel: SELECT k10.prjnr, i21.menge, i21.preis FROM i21,k10 WHERE i21.idk10 = k10.idk10 AND ...

Beispielcode: I27.IDK10
*/ Dieses Feld ist ein relationales Feld zur Tabelle: K10 - Projekte

*/ Evetuell ist dieses Feld NICHT gefüllt, dann besteht keine relationale Verbindung zwischen I27 und K10...
*/ Eine SQL - Abfrage zum Ermitteln von Quelle und Ziel:
SELECT I27.IDK10 AS _Quelle, K10.IDK10 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") LEFT OUTER JOIN (My.Clients.Path.cDbfDir+"K10.DBF") ON I27.IDK10=K10.IDK10 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Der obige Cursor enthält alle Datensätze der Tabelle I27 im Feld _Quelle und nur vorhandene Datensätze der Tabelle K10
*/ Besteht keine relationale Verbindung, so ist der Inhalt der Cursorspalte _Ziel = .NULL.

*/ Die 'gleiche' Abfrage in der NUR relationale Daten vonhanden sind:
SELECT I27.IDK10 AS _Quelle, K10.IDK10 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") INNER JOIN (My.Clients.Path.cDbfDir+"K10.DBF") ON I27.IDK10=K10.IDK10 ;
	WHERE I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Geht auch so...
SELECT I27.IDK10 AS _Quelle, K10.IDK10 AS _Ziel ;
	FROM (My.Clients.Path.cDbfDir+"I27.DBF") , (My.Clients.Path.cDbfDir+"K10.DBF") ;
	WHERE I27.IDK10=K10.IDK10
	AND   I27.... ;
	INTO CURSOR qI27 NOFILTER READWRITE
*/ Es gibt auch einen Zugriff über die My - Struktur, die ein Tabellen-Objekt zurückgibt...
LOCAL loK10 AS Object
loK10 = My.Bussines.Strain.Misc.oK10[I27.IDK10]
IF !EMPTY(loK10.IDK10)
	*/ Dann wurde der Datensatz in der Tabelle K10 gefunden!
	*/ Weiterer Code kann hier stehen...
ENDIF

Felddefinition: I27.INFO
Feldname............ INFO
Feldtyp............. M
Feldgröße........... 4
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ.....
Feldbezeichnung..... Buchungsinfo
Standardwert........
Version Neuanlage... 1.0.04#3000
Version Update...... 1.0.04#3000
Tabellendefinitionen: I27
Kurzbeschreibung: I27.INFO

Diverse Buchnungsinformationen

Feldhilfe: I27.INFO

Diverse Buchnungsinformationen

Beispielcode: I27.INFO


Felddefinition: I27.LASTUPD
Feldname............ LASTUPD
Feldtyp............. N
Feldgröße........... 3
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ignorieren
Erweiterter Typ..... TS
Feldbezeichnung..... Änderungs-Kz.
Standardwert........ 0
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.LASTUPD

Diese Feld dient als Timestamp Feld innerhalb der Tabelle und wird vom System verwendet.

Feldhilfe: I27.LASTUPD

Dieses Feld führt ein sogenanntes Änderungskennzeichen mit.
Bei jeder Änderung an dem Datensatz der Tabelle wird dieses Feld um 1 nach oben gezählt.
Bei einem Wert der größer 999 ist wird wieder bei 0 angefangen.

Beispielcode: I27.LASTUPD
*/ Ein Beispiel für die Berechnung:
REPLACE ... , LASTUPD WITH (LASTUPD+1)%1000
UPDATE .... , LASTUPD = (LASTUPD+1)%1000

Felddefinition: I27.LDATUM
Feldname............ LDATUM
Feldtyp............. D
Feldgröße........... 8
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ignorieren
Erweiterter Typ..... TS
Feldbezeichnung..... Letzte Änderung am
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.LDATUM

Diese Feld dient als Timestamp Feld innerhalb der Tabelle und wird vom System verwendet.

Feldhilfe: I27.LDATUM

Dieses Feld enthält das letzte Änderungsdatum des Datensatzes.

Beispielcode: I27.LDATUM
*/ Ein Beispiel für die Berechnung:
REPLACE ... , LDATUM WITH My.xDate
UPDATE .... , LDATUM = My.xDate

Felddefinition: I27.LPRG
Feldname............ LPRG
Feldtyp............. C
Feldgröße........... 8
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ..... TS
Feldbezeichnung..... Letzte Änderung in
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.LPRG

Diese Feld dient als Timestamp Feld innerhalb der Tabelle und wird vom System verwendet.

Feldhilfe: I27.LPRG

Dieses Feld enthält das Programm der letzten Änderung des Datensatzes.

Beispielcode: I27.LPRG
*/ Ein Beispiel für die Berechnung:
REPLACE ... , LPRG WITH My.lProgram
UPDATE .... , LPRG = My.lProgram

Felddefinition: I27.LWER
Feldname............ LWER
Feldtyp............. C
Feldgröße........... 6
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ..... TS
Feldbezeichnung..... Letzte Änderung von
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.LWER

Diese Feld dient als Timestamp Feld innerhalb der Tabelle und wird vom System verwendet.

Feldhilfe: I27.LWER

Dieses Feld enthält den Benutzer der letzten Änderung des Datensatzes.

Beispielcode: I27.LWER
*/ Ein Beispiel für die Berechnung:
REPLACE ... , LWER WITH My.cUser
UPDATE .... , LWER = My.cUser

Felddefinition: I27.LZEIT
Feldname............ LZEIT
Feldtyp............. C
Feldgröße........... 8
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ..... TS
Feldbezeichnung..... Letzte Änderung um
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.LZEIT

Diese Feld dient als Timestamp Feld innerhalb der Tabelle und wird vom System verwendet.

Feldhilfe: I27.LZEIT

Dieses Feld enthält die Uhrzeit der letzten Änderung des Datensatzes.

Beispielcode: I27.LZEIT
*/ Ein Beispiel für die Berechnung:
REPLACE ... , LZEIT WITH My.xTime
UPDATE .... , LZEIT = My.xTime

Felddefinition: I27.MENGE_S
Feldname............ MENGE_S
Feldtyp............. B
Feldgröße........... 8
Dezimalstellen...... 3
NULL erlaubt........ Nein
CPTRANS durchführen. Ignorieren
Erweiterter Typ..... STOCK
Feldbezeichnung..... Bestellmenge
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.MENGE_S

Mengeneingabe in der entsprechenden Einheit vornehmen. Bei Mengenfeldern mit verschiedenen Einheiten, kann die Einheit mit F2 ausgewählt werden. Beispiel: Menge einer Baugruppenposition.

Feldhilfe: I27.MENGE_S

Bestellmenge

Beispielcode: I27.MENGE_S


Felddefinition: I27.NDATUM
Feldname............ NDATUM
Feldtyp............. D
Feldgröße........... 8
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ignorieren
Erweiterter Typ..... TS
Feldbezeichnung..... Neuanlage am
Standardwert........ My.xDate
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.NDATUM

Diese Feld dient als Timestamp Feld innerhalb der Tabelle und wird vom System verwendet.

Feldhilfe: I27.NDATUM

Dieses Feld enthält das Neuanlagedatum des Datensatzes.
My.xDate gibt das aktuelle Datum zurück.
Bitte verwenden Sie nicht DATE()!

Beispielcode: I27.NDATUM
*/ Ein Beispiel für die Berechnung:
INSERT INTO ... (...,NDATUM) VALUES (...,My.xDate)

Felddefinition: I27.NPRG
Feldname............ NPRG
Feldtyp............. C
Feldgröße........... 8
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ..... TS
Feldbezeichnung..... Neuanlage in
Standardwert........ My.lProgram
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.NPRG

Diese Feld dient als Timestamp Feld innerhalb der Tabelle und wird vom System verwendet.

Feldhilfe: I27.NPRG

Dieses Feld enthält das Programm der Neuanlage des Datensatzes.
My.lProgram gibt das aktuelle Programm zurück.

Beispielcode: I27.NPRG
*/ Ein Beispiel für die Berechnung:
INSERT INTO ... (...,NWER) VALUES (...,My.cUser)

Felddefinition: I27.NWER
Feldname............ NWER
Feldtyp............. C
Feldgröße........... 6
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ..... TS
Feldbezeichnung..... Neuanlage von
Standardwert........ My.cUser
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.NWER

Diese Feld dient als Timestamp Feld innerhalb der Tabelle und wird vom System verwendet.

Feldhilfe: I27.NWER

Dieses Feld enthält den Benutzer der Neuanlage des Datensatzes.
My.cUser gibt den angemeldeten Benutzer (C65) zurück.

Beispielcode: I27.NWER
*/ Ein Beispiel für die Berechnung:
INSERT INTO ... (...,NWER) VALUES (...,My.cUser)

Felddefinition: I27.NZEIT
Feldname............ NZEIT
Feldtyp............. C
Feldgröße........... 8
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ja
Erweiterter Typ..... TS
Feldbezeichnung..... Neuanlage um
Standardwert........ My.xTime
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.NZEIT

Diese Feld dient als Timestamp Feld innerhalb der Tabelle und wird vom System verwendet.

Feldhilfe: I27.NZEIT

Dieses Feld enthält das Neuanlageuhrzeit des Datensatzes.
My.xTime gibt das aktuelle Uhrzeit zurück.
Bitte verwenden Sie nicht TIME()!

Beispielcode: I27.NZEIT
*/ Ein Beispiel für die Berechnung:
INSERT INTO ... (...,NZEIT) VALUES (...,My.xTime)

Felddefinition: I27.STUELI
Feldname............ STUELI
Feldtyp............. L
Feldgröße........... 1
Dezimalstellen...... 0
NULL erlaubt........ Nein
CPTRANS durchführen. Ignorieren
Erweiterter Typ.....
Feldbezeichnung..... Stückliste bestellen J/N
Standardwert........
Version Neuanlage... 1.0.04#2700
Version Update...... 1.0.04#2700
Tabellendefinitionen: I27
Kurzbeschreibung: I27.STUELI

Feldhilfe: I27.STUELI

Beispielcode: I27.STUELI


Siehe auch : Hauptmenü /  Hauptindex /  Such Index /  Cursor Index /  Programm Module /  Tabellen Index /  Tabellenmodule /  Masken Index /  Programmcode Index /  Servicepacks /  My.Struktur /  Funktionen /  Sonstiges Index

Lokale Benutzerhilfe : Meine eigene Hilfe /  Zurück zur PMS32 - Hilfe


Dateiversion:1.0.04#3648 - H.U.DD#SSFF 02.12.2022  Senden Sie Ihren Kommentar zu diesem Thema an das Entwicklungsteam von PMS32  Weitere Informationen finden Sie unter der aktuellen PMS32 WEB-Hilfe
Die Informationen dieser Mitteilung sind vertraulich und nur für Sie bestimmt. Unbefugtes Weiterleiten,  Veröffentlichen, Kopieren usw. sind untersagt und werden gerichtlich verfolgt.  © PMS Compelec GmbH 2022 ® el-Projekt