Einzelnen Beitrag anzeigen

Pfaffe

Registriert seit: 29. Jan 2009
297 Beiträge
 
Delphi 12 Athens
 
#5

AW: SAP RFC_READ_TEXT funktioniert nicht mehr

  Alt 13. Jun 2018, 10:10
So kann ich die Texte holen:
Delphi-Quellcode:
procedure TForm1.btn_GrunddatentexteClick(Sender: TObject);
var
  Funct, Fields, Options, Table, Textline, Itemsrow: OleVariant;
  r: integer;
  //
  ArtNr: string[18];
  Sprache: string[1];
  Textart: string[4];
begin
  try
    ArtNr:= '105073';
    Sprache:= 'F'; // siehe SAP-Tabelle T002
    Textart:= 'GRUN';
    { Grunddatentext (Text-ID GRUN)
      Prüftext (Text-ID PRUE)
      Interner Vermerk (Text-ID IVER)
       Materialnotiz (Text-ID LTXT)
       Einkaufsbestelltext (Text-ID BEST)
       Vertriebstext (Text-ID 0001) }

    //
    if Logon_SAP_ConnectionObject then begin
      SAPFunctions1.RemoveAll;
      Funct:= SAPFunctions1.add('RFC_READ_TEXT');
      Textline:= Funct.Tables.item('TEXT_LINES');
      ItemsRow:= Textline.rows.add;
      ItemsRow.Value[1]:= '002'; // Mandant
      ItemsRow.Value[2]:= 'MATERIAL';
      while length(ArtNr) < 18 do
        ArtNr:= '0' + ArtNr;
      ItemsRow.Value[3]:= ArtNr;
      ItemsRow.Value[4]:= Textart;
      ItemsRow.Value[5]:= Sprache;
      if not Funct.call then
        Set_Meldung(Funct.exception)
      else
        begin
          Table:= Funct.tables.item('TEXT_LINES');
          for r:= 1 to table.rowCount do begin // Der Text kann mehrere Zeilen haben
            // mmo1.lines.Add(Table.Value(r, 1));
            // mmo1.lines.Add(Table.Value(r, 2));
            // mmo1.lines.Add(Table.Value(r, 3));
            // mmo1.lines.Add(Table.Value(r, 4));
            // mmo1.lines.Add(Table.Value(r, 5));
            // mmo1.lines.Add(Table.Value(r, 6));
            // mmo1.lines.Add(Table.Value(r, 7));
            mmo1.lines.Add(Table.Value(r, 8)); // hier steht der Text
          end;
       end;
    end;
  finally
    SAP_ConnectionObject.Logoff;
  end;
end;

Geändert von Pfaffe (13. Jun 2018 um 17:23 Uhr) Grund: Sprachcode 2 Zeichen? Nein 1 Zeichen! GRUN und nicht GRUND, 4 Zeichen.
  Mit Zitat antworten Zitat