Code: Alles auswählen.
SELECT SINGLE * FROM bseg AS e JOIN bkpf AS a ON e~belnr = a~belnr
AND a~bukrs = 'xxxx'
AND a~gjahr = '2008'.
Code: Alles auswählen.
Für Pool-Tabellen, Cluster-Tabellen und Projektions-Views ist JOIN
nicht erlaubt: "BSEG".
Code: Alles auswählen.
SELECT ...
FROM ( bkpf AS bk
INNER JOIN bseg AS bs ON bk~bukrs = bs~bukrs
AND bk~belnr = bs~belnr
AND bk~gjahr = bs~gjahr )
UP TO p_rows ROWS
INTO CORRESPONDING FIELDS OF TABLE lt_test
WHERE bk~bukrs = p_bukrs
AND bk~belnr IN so_belnr
AND bk~blart IN so_blart
AND bk~bldat IN so_bldat
AND bk~budat IN so_budat.
Du kennst die Online-Hilfe nicht?kostonstyle hat geschrieben:wie mach ich das?
danke kostenstyle
Code: Alles auswählen.
CLASS databasetrust DEFINITION.
PUBLIC SECTION.
CLASS-METHODS main.
PRIVATE SECTION.
CLASS-DATA: BEGIN OF it_bkpf.
INCLUDE bkpf.
CLASS-DATA: END OF it_bkpf.
CLASS-DATA: BEGIN OF it_bseg.
INCLUDE bseg.
CLASS-DATA: END OF it_bseg.
ENDCLASS.
Code: Alles auswählen.
CLASS databasetrust DEFINITION.
PUBLIC SECTION.
CLASS-METHODS main.
PRIVATE SECTION.
DATA: d_bkpf TYPE bkpf,
d_bseg TYPE bseg.
CLASS-DATA: BEGIN OF it_bkpf.
INCLUDE STRUCTURE d_bkpf.
CLASS-DATA: END OF it_bkpf.
CLASS-DATA: BEGIN OF it_bseg.
INCLUDE STRUCTURE d_bseg.
CLASS-DATA: END OF it_bseg.
ENDCLASS.
Das glaube ich nicht Siehe mein Posting eins höher.kostonstyle hat geschrieben:habe das programm nachgebessert.
Code: Alles auswählen.
REPORT zprogrammam.
*----------------------------------------------------------------------*
* CLASS databasetrust DEFINITION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS databasetrust DEFINITION.
PUBLIC SECTION.
CLASS-METHODS main.
PRIVATE SECTION.
CLASS-DATA: BEGIN OF it_bkpf,
bukrs_p TYPE bukrs,
belnr_p TYPE belnr_d,
gjahr_p TYPE gjahr,
bschl TYPE bschl,
koart TYPE koart,
shkzg TYPE shkzg,
dmbtr TYPE dmbtr,
wrbtr TYPE wrbtr,
kostl TYPE kostl,
aufnr TYPE aufnr,
vbel2 TYPE vbeln_va,
posn2 TYPE posnr_va,
paobjnr TYPE rkeobjnr,
END OF it_bkpf.
CLASS-DATA: BEGIN OF it_bseg,
bukrs_p TYPE bukrs,
belnr_p TYPE belnr_d,
gjahr_p TYPE gjahr,
tcode TYPE tcode,
END OF it_bseg.
CLASS-DATA: BEGIN OF it_bsis,
bukrs_p TYPE bukrs,
gjahr_p TYPE gjahr,
belnr_p TYPE belnr_d,
hkont TYPE hkont,
buzei TYPE buzei,
waers TYPE waers,
shkzg TYPE shkzg,
END OF it_bsis.
ENDCLASS. "databasetrust DEFINITION
*----------------------------------------------------------------------*
* CLASS databasetrust IMPLEMENTATION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS databasetrust IMPLEMENTATION.
METHOD main.
SELECT bukrs
belnr
gjahr
bschl
koart
shkzg
dmbtr
wrbtr
kostl
aufnr
vbel2
posn2
paobjnr
FROM bkpf INTO TABLE it_bkpf WHERE bukrs = '2008'.
ENDMETHOD. "main
ENDCLASS. "databasetrust IMPLEMENTATION
START-OF-SELECTION.
END-OF-SELECTION.
Code: Alles auswählen.
"IT_BKPF" ist keine interne Tabelle - die Angabe "OCCURS n" fehlt.
Den eigentlichen Knackpunkt hast du noch nicht reingeschrieben: Den BSEG-Select.kostonstyle hat geschrieben:so herr wenzel ist es richtig so?
Wundert mich nicht, weil du it_bkpf nicht als Tabelle deklariert hast.kostonstyle hat geschrieben:aber eine fehler erhalte ich nochgruss kostonstyleCode: Alles auswählen.
"IT_BKPF" ist keine interne Tabelle - die Angabe "OCCURS n" fehlt.
Code: Alles auswählen.
REPORT zprogrammam.
*----------------------------------------------------------------------*
* CLASS databasetrust DEFINITION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS databasetrust DEFINITION.
PUBLIC SECTION.
CLASS-METHODS main.
PRIVATE SECTION.
TYPES: BEGIN OF it_bkpf,
bukrs_p TYPE bukrs,
belnr_p TYPE belnr_d,
gjahr_p TYPE gjahr,
bschl TYPE bschl,
koart TYPE koart,
shkzg TYPE shkzg,
dmbtr TYPE dmbtr,
wrbtr TYPE wrbtr,
kostl TYPE kostl,
aufnr TYPE aufnr,
vbel2 TYPE vbeln_va,
posn2 TYPE posnr_va,
paobjnr TYPE rkeobjnr,
END OF it_bkpf.
DATA: tab_bkpf TYPE TABLE OF it_bkpf INITIAL SIZE 0.
CLASS-DATA: BEGIN OF it_bseg,
bukrs_p TYPE bukrs,
belnr_p TYPE belnr_d,
gjahr_p TYPE gjahr,
tcode TYPE tcode,
END OF it_bseg.
CLASS-DATA: BEGIN OF it_bsis,
bukrs_p TYPE bukrs,
gjahr_p TYPE gjahr,
belnr_p TYPE belnr_d,
hkont TYPE hkont,
buzei TYPE buzei,
waers TYPE waers,
shkzg TYPE shkzg,
END OF it_bsis.
ENDCLASS. "databasetrust DEFINITION
*----------------------------------------------------------------------*
* CLASS databasetrust IMPLEMENTATION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS databasetrust IMPLEMENTATION.
METHOD main.
SELECT bukrs
belnr
gjahr
bschl
koart
shkzg
dmbtr
wrbtr
kostl
aufnr
vbel2
posn2
paobjnr
FROM bkpf INTO TABLE tab_bkpf WHERE bukrs = '2008'.
ENDMETHOD. "main
ENDCLASS. "databasetrust IMPLEMENTATION
START-OF-SELECTION.
END-OF-SELECTION.
Code: Alles auswählen.
Innerhalb einer statischen Methode ist ohne Zusatzangabe nur ein
Zugriff auf statische Attribute möglich.
Eine Tabelle OHNE Kopfzeile (und statt der impliziten Kopfzeile eine explizite Workarea zu definieren).kostonstyle hat geschrieben:nun mein programm ist fast fertig, werde später hier veröffentlichen. ich habe noch ein problem, in oo ist es verboten interne tabelle mit kopfzeile zu definieren, was für eine alternative gibt es?