25. März 2009 12:33
 
 25. März 2009 12:58
mpetersen hat geschrieben:Das Problem das ich damit hatte ist, dass ich nicht im OnInsert Trigger programmieren kann, weil das System den Datensatz zu diesem Zeitpunkt ja noch nicht erfasst hat.
25. März 2009 13:05
 )
 )
			
		25. März 2009 13:20
mpetersen hat geschrieben:Das Problem ist, ich hab versucht, die Ressource dort anzulegen. Aber man kann sich im OnInsert Trigger doch nicht auf die eingegebenen Daten beziehen, oder?
[...]
IF NOT Resource.GET("No.") THEN BEGIN
  Resource.INIT;
  Resource.VALIDATE("No.","No.");
  Resource.Type := Resource.Type::Person;
  Resource.INSERT(TRUE);
END;[...]
IF ("First Name" <> xRec."First Name") OR
   ("Middle Name" <> xRec."Middle Name") OR
   ("Last Name" <> xRec."Last Name") OR
   (Address <> xRec.Address) OR
   ("Address 2" <> xRec."Address 2")
THEN BEGIN
  Resource.GET("No.");
  Resource.VALIDATE(Name,FullName);
  Resource.Address := Address;
  Resource."Address 2" := "Address 2";
  Resource.MODIFY;
END;25. März 2009 13:27
mpetersen hat geschrieben:Aber man kann sich im OnInsert Trigger doch nicht auf die eingegebenen Daten beziehen, oder?

25. März 2009 14:21
Natalie hat geschrieben:Doch, und wie man kann
//Creates the Resource from the Employee
IF NOT TimeJnlSetup.GET() THEN
  ERROR(Text007,TimeJnlSetup.FIELDCAPTION(TimeJnlSetup."Worktype Code"),TimeJnlSetup.TABLECAPTION);
TimeJnlSetup.TESTFIELD("Product Posting Group");
IF Employee.GET(EmplNo) THEN BEGIN
  IF Res THEN BEGIN
    Resource.INIT;
    Resource.VALIDATE("No.");
    Resource.INSERT(TRUE);
    IF Employee."User ID" <> '' THEN BEGIN
      CheckResource(Employee."User ID");
      Resource."User ID" := Employee."User ID";
    END ELSE
      ERROR(Text003);
    Resource.Type := Resource.Type::Person;
    Resource.Name :=  Employee."First Name" + ' ' + Employee."Last Name";
    Resource."Search Name" := Employee."Last Name";
    Resource.Address := Employee.Address;
    Resource.VALIDATE("Gen. Prod. Posting Group",TimeJnlSetup."Product Posting Group") ;
    Resource."Address 2" := Employee."Address 2";
    Resource.City := Employee.City;
    Resource."Social Security No." := Employee."Social Security No.";
    Resource."Job Title" := Employee."Job Title";
    Resource."Employment Date" := Employee."Employment Date";
    Resource."Global Dimension 1 Code" := Employee."Global Dimension 1 Code";
    Resource."Global Dimension 2 Code" := Employee."Global Dimension 2 Code";
    IF (TimeJournalSetup.GET) AND (TimeJournalSetup."Worktype Code" <> '') THEN
      Resource."Base Unit of Measure" := TimeJournalSetup."Worktype Code"
    ELSE
      MESSAGE(Text002,TimeJournalSetup.TABLECAPTION,TimeJournalSetup.FIELDCAPTION(TimeJournalSetup."Worktype Code"),
              Resource.FIELDCAPTION(Resource."Base Unit of Measure"));
    Resource."Last Date Modified" := TODAY;
    Resource."Post Code" := Employee."Post Code";
    Resource.County := Employee.County;
    Resource."Country/Region Code" := Employee."Country/Region Code";
    Resource.VALIDATE("Gen. Prod. Posting Group",TimeJournalSetup."Product Posting Group");
    Resource.MODIFY;
    Employee.VALIDATE(Employee."Resource No.",Resource."No.");
    Employee.MODIFY;
    ResUnitMeasure.INIT;
    ResUnitMeasure."Resource No." := Resource."No.";
    ResUnitMeasure.Code := TimeJnlSetup."Worktype Code";
    ResUnitMeasure."Qty. per Unit of Measure" := 1;
    ResUnitMeasure."Related to Base Unit of Meas." := TRUE;
    ResUnitMeasure.INSERT;
  END;
END ELSE
  ERROR(Text001,EmplNo);25. März 2009 14:35
mpetersen hat geschrieben:Der Mitarbeiter mit der Nummer ... existiert nicht.
25. März 2009 14:42
25. März 2009 14:48

IF Employee.GET(EmplNo) THEN BEGIN
 //
END ELSE // natürlich nicht, den legst du ja gerade erst an
  ERROR(Text001,EmplNo);25. März 2009 14:50
 .  Wenn du den Employee.Get einfach weglässt, und stattdessen mit den Daten aus der Rec-Variable arbeitest, hast evtl. eine Chance die Resourcen anzulegen.
.  Wenn du den Employee.Get einfach weglässt, und stattdessen mit den Daten aus der Rec-Variable arbeitest, hast evtl. eine Chance die Resourcen anzulegen.25. März 2009 15:15
