| Site-ul consultantilor SAP din Romania http://www.sap-consulting.ro/phpbb/ |
|
| MSEG - Select ... for all entries in... http://www.sap-consulting.ro/phpbb/viewtopic.php?f=1&t=543 |
Pagina 1 din 1 |
| Autor: | MIRCEA BULAI [ Mie, 19-Dec-2007 14:21 ] |
| Subiectul mesajului: | MSEG - Select ... for all entries in... |
Hi, All, Extragerea datelor din tabela MSEG intr_o tabela interna , fara o optimizarea frazei select conduce la un timp de raspuns inacceptabil - de ordinul zecilor de minute. Daca in fraza select mai sunt prezente si JOIN pe alte 3-4 tabele si cu cateva conditii in clauza where atunci timpul de raspuns este descurajant de mare. * Incerc optimizarea frazei Select utilizand optiunea FOR ALL ENTRIES : TIME1 = SY-UZEIT. select mblnr mjahr into CORRESPONDING FIELDS OF TABLE it_mkpf from mkpf where budat in perioada. select matnr from mara into CORRESPONDING FIELDS OF TABLE it_mara where mara~mtart in Cont_Mat. * Fraza select de mai jos cand FOR ALL ENTRIES refera o singura tabela ( in cazul de mai jos it_mkpf ) - lucreaza bine. * select mseg~mblnr mseg~mjahr mseg~zeile mseg~matnr mseg~ebeln mseg~menge mseg~dmbtr mseg~bwart into CORRESPONDING FIELDS OF TABLE it_mseg from mseg for all entries in it_mkpf where mblnr = it_mkpf-mblnr and mjahr = it_mkpf-mjahr matnr = it_mara-matnr. * Este necesara insa, filtrarea mai severa a articolelor din MSEG si am nevoie numai de articolele dintr_un anumit cont de gestiune iar o constructie de fraza select de forma celei de mai jos - iese pe eroare de sintaxa: select mseg~mblnr mseg~mjahr mseg~zeile mseg~matnr mseg~ebeln mseg~menge mseg~dmbtr mseg~bwart into CORRESPONDING FIELDS OF TABLE it_mseg from mseg for all entries in it_mkpf and it_mara where mblnr = it_mkpf-mblnr and mjahr = it_mkpf-mjahr and matnr = it_mara-matnr. * TIME2 = SY-UZEIT. WRITE : / TIME1, TIME2. * Help my, FOR ALL ENTRIES lucreaza cu mai multe tabele ? Yes or No ... |
|
| Autor: | Costin Albu [ Joi, 20-Dec-2007 00:29 ] |
| Subiectul mesajului: | |
FOR ALL ENTRIES lucreaza cu o singura tabela interna. Poti face JOIN pe MSEG cu MARA si FOR ALL ENTRIES IN it_mkpf - daca iti foloseste. |
|
| Autor: | MIRCEA BULAI [ Lun, 07-Ian-2008 14:17 ] |
| Subiectul mesajului: | |
Ok. Costin. Multumesc mult. Am utilizat, asa cum ai precizat, in fraza select din MSEG clauza FOR ALL ENTRIES IN it_mkpf si JOIN pe MSEG cu MARA. Rezultatul este spectaculos ... timpul de raspuns al frazei select astfel optimizate s_a diminuat considerabil. |
|
| Pagina 1 din 1 | Ora este UTC + 2 [ DST ] |
| Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |
|