22. November 2012 10:33
22. November 2012 10:52
22. November 2012 10:59
RaiNav hat geschrieben:Dataports kann man in der Projektwarteschlange ausführen, wenn man sie über eine Codeunit aufruft.
CodeunitID := 50048;
DATAPORT.RUN(CodeunitID)
Wenn der Dataport keine Eingaben erwartet, sollte es so funktionieren.
ParameterString_loc := '';
ObjektCodeTxt_loc := '';
ObjektID_loc := 0;
IF ("Parameter String" <> '') THEN BEGIN
  ParameterString_loc := UPPERCASE(COPYSTR("Parameter String",1,1));
  ObjektCodeTxt_loc := COPYSTR("Parameter String",2);
  EVALUATE(ObjektID_loc,ObjektCodeTxt_loc);
  CASE ParameterString_loc OF
    'C' :
    BEGIN
      CODEUNIT.RUN(ObjektID_loc);
    END;
    'R' :
    BEGIN
      REPORT.RUN(ObjektID_loc);
    END;
  END;
END;ParameterString_loc := '';
ObjektCodeTxt_loc := '';
ObjektID_loc := 0;
IF ("Parameter String" <> '') THEN BEGIN
  ParameterString_loc := UPPERCASE(COPYSTR("Parameter String",1,1));
  ObjektCodeTxt_loc := COPYSTR("Parameter String",2);
  EVALUATE(ObjektID_loc,ObjektCodeTxt_loc);
  CASE ParameterString_loc OF
    'C' :
    BEGIN
      CODEUNIT.RUN(ObjektID_loc);
    END;
    'R' :
    BEGIN
      REPORT.RUN(ObjektID_loc);
    END;
    'D' :
    BEGIN
      DATAPORT.RUN(ObjektID_loc);
    END;
  END;
END;22. November 2012 11:14
23. November 2012 12:12
Teilstring := pteDataset;
KennNr_txt := '';
Region_txt := '';
Produkt_txt := '';
HighLow_txt := '';
Betrag_txt := '';
Einheit_txt := '';
Datum_txt := '';
OMR_re.RESET;
OMR_re.INIT;
// Feld 1 KennNr.
Teilstring := COPYSTR(Teilstring,STRPOS(Teilstring,';')+1,STRLEN(Teilstring));
KennNr_txt := Teilstring;
OMR_re."Kenn Nr." := KennNr_txt;
// Feld 2 Region
Teilstring := COPYSTR(Teilstring,STRPOS(Teilstring,';')+1,STRLEN(Teilstring));
Region_txt := Teilstring;
OMR_re.Region := Region_txt;
// Feld 3 Produkt
Teilstring := COPYSTR(Teilstring,STRPOS(Teilstring,';')+1,STRLEN(Teilstring));
Produkt_txt := Teilstring;
OMR_re.Produkt := Produkt_txt;
//Feld 4  HighLow Option Feld
Teilstring := COPYSTR(Teilstring,STRPOS(Teilstring,';')+1,STRLEN(Teilstring));
HighLow_txt := Teilstring;
CASE HighLow_txt OF
  'high' :
  BEGIN
    OMR_re."High/Low" := OMR_re."High/Low"::high
  END;
  'low' :
  BEGIN
    OMR_re."High/Low" := OMR_re."High/Low"::low
  END;
END;
//Feld 5 Betrag
Teilstring := COPYSTR(Teilstring,STRPOS(Teilstring,';')+1,STRLEN(Teilstring));
Betrag_txt := Teilstring;
EVALUATE(OMR_re.Betrag,Betrag_txt);
//Feld 6 Einheit
Teilstring := COPYSTR(Teilstring,STRPOS(Teilstring,';')+1,STRLEN(Teilstring));
Einheit_txt:= Teilstring;
OMR_re.Einheit := Einheit_txt;
// Feld 7 Datum
Datum_txt := DELCHR(COPYSTR(Teilstring,1,STRPOS(Teilstring,';')-1),'<',' ');
IF Datum_txt <> '' THEN BEGIN
  EVALUATE(Tag,COPYSTR(Datum_txt,1,2));
  EVALUATE(Monat,COPYSTR(Datum_txt,4,2));
  EVALUATE(Jahr,COPYSTR(Datum_txt,7,4));
  OMR_re.Datum := DMY2DATE(Tag, Monat, Jahr);
END;
OMR_re.INSERT;23. November 2012 12:38