Export rate stepz to ABAP
Hi Expert,
I have a rate(ZGAS_Bill_DSC) with rate steps with lot of
If
Else
EndIF
How can I export to one ABAP code behind all steps in one file ?
I think I’ll have a better overview.
Regards,
Tierno
QT does not support the export of the sound from mpeg-1 and mpeg-2 files.QT Mpeg Limitations
This freeware, however, will export both sound and video from mpeg-1 as is (mpeg-2 requires the Apple Playback component). Mpeg StreamClip
Mpeg-1 is usually 41.100, I believe. You may need to set it to that via the MIDI settings. Others have reported problems hearing sound in QT with the 48000 setting. That, however, is a separate issue from the lack of sound in mpeg exports from QT.
Similar Messages
-
Unable to open the export file during Import ABAP phase on tar(System copy)
Hi Experts,
We are encountering the following error during Import ABAP phase on target system as we are performing system copy on target system as part of hardware migration(Data center migration).
Scenario:
Sourrce system - BI- ABAP(7.01), Win 2003 x64 unicode,Oracle 10.2.0.4
Target system - BI-ABAP(7.01), Win 2008 R2 unicode, Oracle 11.2.0.1
Actually on source system the data has been generated using migration monitor by using table splitting option and transferred on target system thru ftp option.
During Import process while selecting the Database installation type we have selected the installation method as "Standard systemcopy/Migration(load based)" and not checked the option "Start Migration montior Manually".
As far as my concern this error has nothing to do with this selection.please correct me If i am wrong.
T:\usr\sap\BWS\SYS\exe\uc\NTAMD64\R3load.exe: START OF LOG: 20110428082000
T:\usr\sap\BWS\SYS\exe\uc\NTAMD64\R3load.exe: sccsid @(#) $Id: //bas/701_REL/src/R3ld/R3load/R3ldmain.c#5 $ SAP
T:\usr\sap\BWS\SYS\exe\uc\NTAMD64\R3load.exe: version R7.01/V1.4 [UNICODE]
Compiled Feb 24 2009 23:41:07
T:\usr\sap\BWS\SYS\exe\uc\NTAMD64\R3load.exe -dbcodepage 4103 -i test_MIGKEY.cmd -l test_MIGKEY.log -K
DbSl Trace: ORA-1403 when accessing table SAPUSER
(DB) INFO: connected to DB
(DB) INFO: DbSlControl(DBSL_CMD_NLS_CHARACTERSET_GET): UTF8
(TFH) ERROR: Unable to open
10.207.3.59\d$\ftproot\import_sap\BWS\ABAP\DATA\ARFCSDATA.TOC
(TFH) ERROR: OS error message: Invalid argument
T:\usr\sap\BWS\SYS\exe\uc\NTAMD64\R3load.exe: job finished with 1 error(s)
T:\usr\sap\BWS\SYS\exe\uc\NTAMD64\R3load.exe: END OF LOG: 20110428082003
Kindly revert with resolutions and suggestions and any hint to the oss notes as we haven't found anything specific to this error.
Regrds,
Dheeraj\\10.207.3.59\d$\ftproot\import_sap\BWS\ABAP\DATA\ARFCSDATA.TOC
Please check if above said file located under specified path where SAPINST searvhing for it ie at
10.207.3.59\d$\ftproot\import_sap\BWS\ABAP\DATA. if this file dont exist them it may be the case that your export is not proper.
Also check if user from which you have started this SAPINST is able to access
10.207.3.59\d$\ftproot\import_sap\BWS\ABAP\DATA.
Thanks..
Mohit -
Unable to perform Calculations on Excel exported from Web Dynpro ABAP
Hi Gurus,
I have a custom functionality "Export to Excel" internal table data on my web dynpro application. I dint go with standard ALV feature because it doesnot give flexibility to add colours to excel sheet and add multiple tabs and so i had to write XML ABAP coding in the web dynpro application to achieve this. While passing the internal table data into cells, i created cells with string data type and hence all the fields in the excel are now in char type. Users are unable to perform any calculations because of this issue, i tried to format the cells but it doesnot work. Please help me.
Regards,
Pravs.Hi,
Just do the following in excel before downloading and check whether it works.
Tools->Options->International tab.
In that mention decimal separator as ,(comma).
Thousand separator as .(dot).
Uncheck use system separators. -
Deployment : Exporting and importing a ABAP code to other SAP Server
Hello Expert,
I am very new to SAP ABAP. My query is , If we write a code in user exit on one SAP server and if we need to deploy the same on other SAP server who are not tightly coupled with each other , How should we do??
Is there any way to export and import the code?? How do we deliver the code if anyone wants that code? Is there any way to deliver the code other than manual copy and paste??
Any idea??
Thanks,
PrashantHi,
Check this.May be this can help you.
http://www.sap-basis-abap.com/sapac008.htm
http://www.sap-press.de/forum/gp/themaID-5/zeige-12302/thread
Message was edited by: Jayanthi Jayaraman -
Export/import of an ABAP query
hi
i wana export a query from one client to another. then change it and again import the new one.
Please guide me 4 that. As i wil b exporting from production, matter is sensitive. so please provide me the detailed description.
thx in advance. will appreciate the help
-Prashantthe tread says "In SQ02 transaction click on environment and then click on transport. Here you can download the query (along with infoset) to your desktop and then upload to your destination system."
but there isn't a export - import radio button...
there is another way?
V. -
Aperture 3.02 Export Rate
Wow! Where do I begin with this? Exporting images from Aperture is so excruciatingly slow, it is really impeding my work flow. Exporting an image to jpeg at 50% takes approximately 4:45 if done in a batch. If done individually, it takes 3:45.
I tried a lower resolution (1024 X 1024), the export time is still 3:45. As I'm working on a project, I have 23 images to export. I calculated it would take over 86 minutes to export them to my desktop. My gosh, this is utterly frustrating. I used to be able to export images out of Aperture 2 in a rush to get things done.
Does anyone know any fixes to this? It seems to have worsen over time. This is the first Apple application that has caused me to question if they're losing their touch.
By the way, uploading images via the Aperture Facebook Uploader is even worse. I've given up on that. Uploading an album with about 24 images takes over 90 minutes. And clearly, exporting them first doesn't help, since Aperture's export function is clearly not helpful. Getting images to print for customers and clients has turned into a lengthy process.
Anyone else is having this trouble and if so, what have you done to handle it?AN UPDATE: I've spent the past hour or so exporting in 50% of original (jpeg). My original estimate of 3 minutes and 45 seconds per photo did not take into consideration other processes running on my machine. So, apparently the export function slows down even further when MobileMe is synchronizing or when Time Machine is backing up. So it seems that almost one hour into my export, only 11 of 23 images actually exported.
This is incredulous. Definitely to first Apple application that I feel actually decreased my productivity. I surely hope they fix this soon. -
Webdynpro abap ALV export to excel with images problem
Hello experts,
I'm having problems with standard excel export functionality in webdynpro abap ALV.
In my table i have images taken from content server (employee photos) linked with URL to a table_cell Image, when i export the table to excel using standard function the images is showed as a broken picture with the following text:
"The linked image cannot displayed. The file may have been moved, or deleted. Verify that the link points to the correct file and location."
I'm running on sap basis 7.02 SP13 and implemented the notes 1975765 and 1985288 but not resolved this issue.
Do you have any ideas?
Thank you.Hi Jorge,
Are you able to download the ICONs from alv table? try to use some icon source '~Icon/Add' and check out if you can download it to excel successfully.
FYR:
Regards,
Rama -
hi all
I'm new for ABAP OOPS, I want to know about abap oops concept. Can you any one explain about that i want simple example.
with regards.
Muthukumar.KHi Muthu,
Please check out transaction ABAPDOCU. It contains multiple examples on ABAP Objects. Also, browse this site for more examples on ABAP Objects. I also have included a sample report that I did using ABAP Objects. Please check it out. Hope it helps...
P.S. Please award points if it helps...
*==================================================================
* Program Name : ZFR_FOREX_REV_ACCTG
* Author : Aris Hidalgo
* Date Created : August 3, 2006
* Description : Show the exchange rate for a given range of 7 years
*==================================================================
REPORT zfr_forex_rev_acctg
NO STANDARD PAGE HEADING
LINE-SIZE 500
LINE-COUNT 0
MESSAGE-ID zz.
* Data dictionary table/s *
TABLES: bsis,
bsas,
tcurr,
t001.
* Global Structure/s *
TYPES: BEGIN OF t_bsis_bsas,
hkont TYPE bsis-hkont, "General ledger account
year_dum TYPE bsis-gjahr,
belnr TYPE bsis-belnr, "Accounting document number
bldat TYPE bsis-bldat, "Document date in document
waers TYPE bsis-waers, "Currency Key
dmbtr TYPE bsis-dmbtr, "Amount in local currency
wrbtr TYPE bsis-wrbtr, "Amount in document currency
shkzg TYPE bsis-shkzg, "Debit/credit indicator
zuonr TYPE bsis-zuonr, "Assignment number
gjahr TYPE bsis-gjahr, "Fiscal year
blart TYPE bsis-blart, "Document type
END OF t_bsis_bsas.
TYPES: BEGIN OF t_summary,
hkont TYPE bsis-hkont,
year_dum TYPE bsis-gjahr,
waers TYPE bsis-waers,
rate TYPE tcurr-ukurs,
wrbtr TYPE bsis-wrbtr,
dmbtr TYPE bsis-dmbtr,
gl_bal TYPE bsis-wrbtr,
unrealized TYPE bsis-wrbtr,
END OF t_summary.
TYPES: BEGIN OF t_exch,
year TYPE bsis-gjahr,
rate TYPE bapi1093_1-rate_type,
from_curr TYPE bapi1093_1-from_curr,
exch_rate TYPE bapi1093_0-exch_rate_v,
END OF t_exch.
* Global Data *
DATA: gv_hkont TYPE bsis-hkont,
it_bsis_bsas TYPE STANDARD TABLE OF t_bsis_bsas,
it_exch TYPE SORTED TABLE OF t_exch WITH UNIQUE
KEY year rate from_curr,
it_summary TYPE STANDARD TABLE OF t_summary,
wa_summary LIKE LINE OF it_summary,
wa_exch LIKE LINE OF it_exch,
t_rate_type TYPE bapi1093_1-rate_type VALUE 'ME',
t_from_curr TYPE bapi1093_1-from_curr,
t_to_curr TYPE bapi1093_1-to_currncy VALUE 'USD',
t_date TYPE bapi1093_2-trans_date,
t_date_out TYPE bapi1093_2-trans_date,
t_exch_rate TYPE bapi1093_0,
t_message TYPE bapireturn1.
FIELD-SYMBOLS: <fs_asof> TYPE bsis-gjahr,
<fs_bsis_bsas> LIKE LINE OF it_bsis_bsas.
* Selection screen *
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS: p_bukrs TYPE t001-bukrs OBLIGATORY,
p_asof TYPE bsis-budat OBLIGATORY,
p_year TYPE bsis-gjahr OBLIGATORY.
SELECT-OPTIONS: s_hkont FOR bsis-hkont NO INTERVALS OBLIGATORY.
SELECTION-SCREEN END OF BLOCK b1.
*/ CLASS DEFINITIONS
* CLASS lcl_main DEFINITION
CLASS lcl_main DEFINITION.
PUBLIC SECTION.
METHODS: get_data,
get_diff,
display_subheader,
display_rate
IMPORTING
rate TYPE tcurr-ukurs
pos TYPE i,
display_header,
top_of_page,
get_rate_and_show
EXPORTING
ex_bsis_bsas LIKE it_bsis_bsas
ex_exch LIKE it_exch,
conversion
IMPORTING
year TYPE bsis-gjahr
rate_type TYPE bapi1093_1-rate_type
from_curr TYPE bapi1093_1-from_curr
to_curr TYPE bapi1093_1-to_currncy
EXPORTING
exch_rate TYPE bapi1093_0
t_date TYPE bapi1093_2-trans_date.
EVENTS: no_data EXPORTING value(hkont) TYPE bsis-hkont.
PRIVATE SECTION.
TYPES: BEGIN OF t_waers,
waers TYPE bsis-waers,
END OF t_waers.
TYPES: BEGIN OF t_local,
year TYPE bsis-gjahr,
rate TYPE tcurr-ukurs,
END OF t_local.
DATA: it_waers TYPE SORTED TABLE OF t_waers WITH UNIQUE
KEY waers,
it_local TYPE SORTED TABLE OF t_local WITH UNIQUE
KEY year,
wa_waers LIKE LINE OF it_waers,
wa_local LIKE LINE OF it_local,
lv_counter TYPE i,
lv_asof TYPE bsis-gjahr,
lv_year TYPE bsis-gjahr,
lv_check TYPE i,
lv_7years TYPE i,
lv_date TYPE pc226-endda,
lv_pos TYPE i,
lv_pos2 TYPE i,
lv_vline TYPE i,
lv_rate TYPE p DECIMALS 5,
lv_givendate TYPE syst-datum.
ENDCLASS.
* CLASS lcl_summary DEFINITION
CLASS lcl_summary DEFINITION INHERITING FROM lcl_main.
PUBLIC SECTION.
METHODS: display_summary_header,
display_summary
IMPORTING
im_bsis_bsas LIKE it_bsis_bsas
im_exch LIKE it_exch.
ENDCLASS.
* CLASS lcl_handler DEFINITION
CLASS lcl_handler DEFINITION.
PUBLIC SECTION.
METHODS handle_event FOR EVENT no_data OF lcl_main
IMPORTING hkont.
ENDCLASS.
*/ CLASS IMPLEMENTATIONS
* CLASS lcl_main IMPLEMENTATION
CLASS lcl_main IMPLEMENTATION.
* METHOD get_data *
METHOD get_data.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
* PERCENTAGE = 0
text = 'Getting data. Please wait...'
* get records from BSIS
SELECT hkont zuonr gjahr belnr waers bldat blart dmbtr wrbtr shkzg
FROM bsis
INTO CORRESPONDING FIELDS OF TABLE it_bsis_bsas
WHERE bukrs = p_bukrs
AND hkont IN s_hkont
AND budat <= p_asof.
* get records from BSAS
SELECT hkont zuonr gjahr belnr waers bldat blart dmbtr wrbtr shkzg
FROM bsas
APPENDING CORRESPONDING FIELDS OF TABLE it_bsis_bsas
WHERE bukrs = p_bukrs
AND hkont IN s_hkont
AND budat <= p_asof
AND augdt > p_asof.
* if itab has no records, raise event
IF it_bsis_bsas[] IS INITIAL.
RAISE EVENT no_data EXPORTING hkont = s_hkont-low.
ENDIF.
ENDMETHOD.
* METHOD get_diff *
METHOD get_diff.
DATA: lv_sub7 TYPE i.
lv_asof = p_year + 6.
IF lv_asof > p_asof+0(4).
lv_asof = p_asof+0(4).
ENDIF.
lv_year = p_year.
* determine how many years will be displayed
lv_counter = lv_asof - lv_year.
ADD 1 TO lv_counter.
lv_sub7 = lv_asof - 6.
lv_7years = lv_asof - lv_sub7.
ADD 1 TO lv_7years.
ENDMETHOD.
* METHOD display_subheader *
METHOD display_subheader.
DATA: lv_date(10) TYPE c,
lv_gdatu TYPE tcurr-gdatu,
lv_flag(1) TYPE c,
lv_pos_dum TYPE i.
FIELD-SYMBOLS: <fs_bsis_bsas> LIKE LINE OF it_bsis_bsas.
* pre-defined length of uline and vline depending on the
* number of years to be displayed
CASE lv_counter.
WHEN 1.
lv_pos = 24.
lv_pos2 = 37.
lv_vline = 126.
WHEN 2.
lv_pos = 45.
lv_pos2 = 58.
lv_vline = 147.
WHEN 3.
lv_pos = 66.
lv_pos2 = 79.
lv_vline = 168.
WHEN 4.
lv_pos = 87.
lv_pos2 = 100.
lv_vline = 189.
WHEN 5.
lv_pos = 108.
lv_pos2 = 121.
lv_vline = 210.
WHEN 6.
lv_pos = 128.
lv_pos2 = 141.
lv_vline = 230.
WHEN 7.
lv_pos = 148.
lv_pos2 = 161.
lv_vline = 250.
ENDCASE.
* get currency
IF NOT lv_check = 1.
LOOP AT it_bsis_bsas ASSIGNING <fs_bsis_bsas>.
MOVE <fs_bsis_bsas>-waers TO wa_waers.
INSERT wa_waers INTO TABLE it_waers.
<fs_bsis_bsas>-year_dum = <fs_bsis_bsas>-bldat+0(4).
ENDLOOP.
ENDIF.
ASSIGN lv_asof TO <fs_asof>.
IF NOT lv_check = 1.
SORT it_bsis_bsas BY hkont year_dum belnr bldat waers dmbtr wrbtr.
IF <fs_bsis_bsas> IS ASSIGNED.
UNASSIGN <fs_bsis_bsas>.
READ TABLE it_bsis_bsas INDEX 1 ASSIGNING <fs_bsis_bsas>.
IF sy-subrc = 0 AND <fs_bsis_bsas> IS ASSIGNED.
gv_hkont = <fs_bsis_bsas>-hkont.
ENDIF.
ENDIF.
ENDIF.
* write sub-header
DESCRIBE TABLE it_waers LINES sy-tfill.
LOOP AT it_waers INTO wa_waers.
IF sy-tfill = 1 AND wa_waers-waers = 'PHP'.
lv_flag = 1 .
ENDIF.
IF NOT lv_flag = 1.
IF lv_check IS INITIAL.
WRITE: AT /103 sy-uline(lv_pos),
AT /103 sy-vline.
ENDIF.
* write the years in the sub-header
IF NOT lv_check = 1.
lv_pos_dum = 110.
FORMAT COLOR COL_HEADING.
DO lv_counter TIMES.
IF sy-index = 6.
WRITE: AT lv_pos_dum(14) <fs_asof> RIGHT-JUSTIFIED.
ELSEIF sy-index = 7.
WRITE: AT lv_pos_dum(13) <fs_asof> RIGHT-JUSTIFIED.
ELSE.
WRITE: AT lv_pos_dum(15) <fs_asof> RIGHT-JUSTIFIED.
ENDIF.
ADD 21 TO lv_pos_dum.
SUBTRACT 1 FROM <fs_asof>.
ENDDO.
WRITE sy-vline.
FORMAT COLOR OFF.
ENDIF.
IF sy-tabix = 1 AND wa_waers-waers = 'PHP'.
WRITE: AT /90 sy-uline(lv_pos2).
ENDIF.
IF wa_waers-waers <> 'PHP'.
IF lv_check IS INITIAL.
WRITE: AT /90 sy-uline(lv_pos2).
WRITE: AT /90 sy-vline.
ELSE.
WRITE: AT /90 sy-vline.
ENDIF.
ENDIF.
FORMAT COLOR COL_NORMAL.
IF NOT wa_waers-waers = 'PHP'.
WRITE: AT 91(10) wa_waers-waers CENTERED. "write the currency
ENDIF.
ENDIF.
lv_asof = p_year + 6.
IF lv_asof > p_asof+0(4).
lv_asof = p_asof+0(4).
ENDIF.
* get exchange rate from PHP to USD
IF lv_check IS INITIAL.
t_from_curr = 'PHP'.
DO lv_counter TIMES.
* use BAPI to get exchange rate
CALL METHOD me->conversion EXPORTING
year = <fs_asof>
rate_type = t_rate_type
from_curr = t_from_curr
to_curr = t_to_curr
IMPORTING
exch_rate = t_exch_rate
t_date = t_date_out.
* if no exchange rate was fetched, get directly from TCURR
* using given date
IF t_exch_rate-exch_rate_v IS INITIAL.
WRITE t_date_out TO lv_date USING EDIT MASK '__/__/____'.
CALL FUNCTION 'CONVERSION_EXIT_INVDT_INPUT'
EXPORTING
input = lv_date
IMPORTING
output = lv_date.
SELECT SINGLE ukurs FROM tcurr
INTO t_exch_rate-exch_rate_v
WHERE kurst = 'ME'
AND fcurr = 'PHP'
AND tcurr = 'USD'
AND gdatu = lv_date.
ENDIF.
IF NOT t_exch_rate-exch_rate_v IS INITIAL.
t_exch_rate-exch_rate_v = abs( t_exch_rate-exch_rate_v ).
wa_local-year = <fs_asof>.
wa_local-rate = t_exch_rate-exch_rate_v.
INSERT wa_local INTO TABLE it_local.
ENDIF.
SUBTRACT 1 FROM <fs_asof>.
CLEAR: t_exch_rate, wa_local, t_date_out, lv_date.
ENDDO.
ENDIF.
lv_pos = 106.
* get exchange rate from itab to USD
CLEAR: t_exch_rate, lv_gdatu.
t_from_curr = wa_waers-waers.
lv_asof = p_year + 6.
IF lv_asof > p_asof+0(4).
lv_asof = p_asof+0(4).
ENDIF.
DO lv_counter TIMES.
IF t_from_curr = 'USD'.
READ TABLE it_local WITH KEY year = <fs_asof>
INTO wa_local TRANSPORTING rate.
lv_rate = wa_local-rate.
ELSEIF t_from_curr = 'PHP'.
READ TABLE it_local WITH KEY year = <fs_asof>
INTO wa_local TRANSPORTING rate.
lv_rate = wa_local-rate.
ELSE.
* use BAPI to get exchange rate for currencies that is
* not 'PHP' and 'USD'
CALL METHOD me->conversion EXPORTING
year = <fs_asof>
rate_type = t_rate_type
from_curr = t_from_curr
to_curr = t_to_curr
IMPORTING
exch_rate = t_exch_rate
t_date = t_date_out.
* if no exchange rate was fetched, get directly from TCURR
* using given date
IF t_exch_rate-exch_rate_v IS INITIAL.
WRITE t_date_out TO lv_date USING EDIT MASK '__/__/____'.
CALL FUNCTION 'CONVERSION_EXIT_INVDT_INPUT'
EXPORTING
input = lv_date
IMPORTING
output = lv_date.
SELECT SINGLE ukurs FROM tcurr
INTO t_exch_rate-exch_rate_v
WHERE kurst = 'ME'
AND fcurr = wa_waers-waers
AND tcurr = 'USD'
AND gdatu = lv_date.
ENDIF.
IF NOT t_exch_rate-exch_rate_v IS INITIAL.
READ TABLE it_local WITH KEY year = <fs_asof>
INTO wa_local TRANSPORTING rate.
IF sy-subrc = 0.
IF t_exch_rate-exch_rate_v <> wa_local-rate.
lv_rate = 1 / t_exch_rate-exch_rate_v * wa_local-rate.
ELSE.
lv_rate = t_exch_rate-exch_rate_v.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
IF NOT lv_rate IS INITIAL.
lv_rate = abs( lv_rate ).
wa_exch-year = <fs_asof>.
wa_exch-rate = t_rate_type.
wa_exch-from_curr = t_from_curr.
wa_exch-exch_rate = lv_rate.
INSERT wa_exch INTO TABLE it_exch.
IF NOT lv_flag = 1.
IF NOT wa_waers-waers = 'PHP'.
CALL METHOD me->display_rate
EXPORTING
rate = wa_exch-exch_rate
pos = lv_pos.
CLEAR wa_exch.
ENDIF.
ENDIF.
ENDIF.
ADD 21 TO lv_pos.
SUBTRACT 1 FROM <fs_asof>.
CLEAR: t_exch_rate, wa_local, t_date_out,
lv_date,lv_rate.
ENDDO.
IF NOT lv_flag = 1.
WRITE: AT lv_vline sy-vline.
ENDIF.
FORMAT COLOR OFF.
lv_asof = p_year + 6.
IF lv_asof > p_asof+0(4).
lv_asof = p_asof+0(4).
ENDIF.
lv_check = 1.
CLEAR lv_flag.
ENDLOOP.
ENDMETHOD.
* METHOD display_rate *
METHOD display_rate.
WRITE: AT pos(15) rate RIGHT-JUSTIFIED.
ENDMETHOD.
* METHOD display_header *
METHOD display_header.
CLEAR lv_pos.
lv_asof = p_year + 6.
IF lv_asof > p_asof+0(4).
lv_asof = p_asof+0(4).
ENDIF.
CLEAR lv_pos2.
CASE lv_counter.
WHEN 1.
lv_pos2 = 126.
WHEN 2.
lv_pos2 = 147.
WHEN 3.
lv_pos2 = 168.
WHEN 4.
lv_pos2 = 189.
WHEN 5.
lv_pos2 = 210.
WHEN 6.
lv_pos2 = 230.
WHEN 7.
lv_pos2 = 250.
ENDCASE.
lv_pos = 110.
FORMAT COLOR COL_HEADING.
WRITE: / sy-uline(lv_pos2),
/ sy-vline,
(18) 'Allocation' CENTERED,
(04) 'DT' CENTERED,
(11) 'Doc. No.' CENTERED,
(11) 'Doc. Date' LEFT-JUSTIFIED,
(06) 'Cur.' LEFT-JUSTIFIED,
(20) 'Transaction Curr.' CENTERED,
(20) 'Local Curr. (PHP)' CENTERED.
DO lv_counter TIMES.
WRITE: AT lv_pos(14) <fs_asof> RIGHT-JUSTIFIED.
SUBTRACT 1 FROM <fs_asof>.
ADD 21 TO lv_pos.
ENDDO.
WRITE: AT lv_pos2 sy-vline,
/ sy-uline(lv_pos2).
FORMAT COLOR OFF.
ENDMETHOD.
* METHOD top_of_page *
METHOD top_of_page.
DATA: text1 TYPE string,
text2 TYPE string,
lv_asof TYPE bsis-budat,
lv_pageno(03) TYPE n,
lv_date(10) TYPE c.
* get company code description
SELECT SINGLE butxt FROM t001
INTO t001-butxt
WHERE bukrs = p_bukrs.
WRITE: / t001-butxt,
/ sy-title.
* write account code(HKONT)
CONCATENATE: gv_hkont '/' p_bukrs
INTO text1.
CONCATENATE: 'Account:' text1
INTO text2
SEPARATED BY space.
WRITE: / text2.
CLEAR: text1, text2.
* write as of date
WRITE p_asof TO lv_date USING EDIT MASK '__/__/____'.
CONCATENATE: 'As of' lv_date
INTO text1
SEPARATED BY space.
WRITE: / text1.
CLEAR: text1, lv_date.
* from year to as of year
lv_asof = p_asof+0(4).
CONCATENATE: 'Year:' p_year 'to' lv_asof
INTO text1
SEPARATED BY space.
WRITE: / text1.
CLEAR text1.
* page number
lv_pageno = sy-pagno.
CONCATENATE: 'Page No:' lv_pageno
INTO text1
SEPARATED BY space.
WRITE: / text1.
CLEAR text1.
SKIP 2.
ENDMETHOD.
* METHOD get_rate_and_show *
METHOD get_rate_and_show.
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
EXPORTING
* PERCENTAGE = 0
text = 'Combining data.Please wait... '
DATA: lv_amount(15) TYPE p DECIMALS 2,
lv_color(1) TYPE n VALUE 1,
lv_index1(15) TYPE p DECIMALS 2,
lv_index2(15) TYPE p DECIMALS 2,
lv_index3(15) TYPE p DECIMALS 2,
lv_index4(15) TYPE p DECIMALS 2,
lv_index5(15) TYPE p DECIMALS 2,
lv_index6(15) TYPE p DECIMALS 2,
lv_index7(15) TYPE p DECIMALS 2,
lv_total1(15) TYPE p DECIMALS 2,
lv_total2(15) TYPE p DECIMALS 2,
lv_total3(15) TYPE p DECIMALS 2,
lv_total4(15) TYPE p DECIMALS 2,
lv_total5(15) TYPE p DECIMALS 2,
lv_total6(15) TYPE p DECIMALS 2,
lv_total7(15) TYPE p DECIMALS 2,
lv_dmbtr(15) TYPE p DECIMALS 2,
lv_dmbtr_tot(15) TYPE p DECIMALS 2,
lv_old TYPE bsis-hkont,
lv_new TYPE bsis-hkont.
lv_asof = p_year + 6.
IF lv_asof > p_asof+0(4).
lv_asof = p_asof+0(4).
ENDIF.
CLEAR lv_check.
ADD 1 TO lv_check.
SORT it_bsis_bsas BY hkont year_dum belnr bldat waers dmbtr wrbtr.
* write details
LOOP AT it_bsis_bsas ASSIGNING <fs_bsis_bsas>.
IF lv_color = 1.
lv_color = 2.
ELSE.
lv_color = 1.
ENDIF.
* if <fs_bsis_bsas>-shkzg = 'H', multiply WRBTR and
* DMBTR by -1
IF <fs_bsis_bsas>-shkzg = 'H'.
<fs_bsis_bsas>-wrbtr = <fs_bsis_bsas>-wrbtr * -1.
<fs_bsis_bsas>-dmbtr = <fs_bsis_bsas>-dmbtr * -1.
ENDIF.
* for every new account no.(HKONT), create a new page
lv_new = <fs_bsis_bsas>-hkont.
gv_hkont = <fs_bsis_bsas>-hkont.
IF lv_new <> lv_old AND NOT lv_old IS INITIAL.
NEW-PAGE.
CALL METHOD me->display_subheader.
CALL METHOD me->display_header.
ENDIF.
lv_old = lv_new.
* write details
FORMAT INTENSIFIED OFF COLOR = lv_color.
WRITE: / sy-vline,
(18) <fs_bsis_bsas>-zuonr CENTERED,
(04) <fs_bsis_bsas>-blart CENTERED,
(10) <fs_bsis_bsas>-belnr CENTERED,
(10) <fs_bsis_bsas>-bldat RIGHT-JUSTIFIED,
(05) <fs_bsis_bsas>-waers RIGHT-JUSTIFIED,
(20) <fs_bsis_bsas>-wrbtr RIGHT-JUSTIFIED,
(20) <fs_bsis_bsas>-dmbtr RIGHT-JUSTIFIED.
ADD <fs_bsis_bsas>-dmbtr TO: lv_dmbtr, lv_dmbtr_tot.
* write the converted amount for a given year
WHILE lv_check <= lv_counter.
IF <fs_asof> >= <fs_bsis_bsas>-bldat+0(4).
t_from_curr = <fs_bsis_bsas>-waers.
READ TABLE it_exch WITH KEY year = <fs_asof>
rate = t_rate_type
from_curr = t_from_curr
INTO wa_exch TRANSPORTING exch_rate.
IF sy-subrc = 0.
IF <fs_bsis_bsas>-waers = 'PHP'.
lv_amount = 1 / wa_exch-exch_rate * wa_exch-exch_rate.
lv_amount = <fs_bsis_bsas>-wrbtr * lv_amount.
ELSE.
lv_amount = <fs_bsis_bsas>-wrbtr * wa_exch-exch_rate.
ENDIF.
WRITE: (20) lv_amount RIGHT-JUSTIFIED.
CASE sy-index.
WHEN 1.
ADD lv_amount TO lv_index1.
ADD lv_amount TO lv_total1.
WHEN 2.
ADD lv_amount TO lv_index2.
ADD lv_amount TO lv_total2.
WHEN 3.
ADD lv_amount TO lv_index3.
ADD lv_amount TO lv_total3.
WHEN 4.
ADD lv_amount TO lv_index4.
ADD lv_amount TO lv_total4.
WHEN 5.
ADD lv_amount TO lv_index5.
ADD lv_amount TO lv_total5.
WHEN 6.
ADD lv_amount TO lv_index6.
ADD lv_amount TO lv_total6.
WHEN 7.
ADD lv_amount TO lv_index7.
ADD lv_amount TO lv_total7.
ENDCASE.
ENDIF.
ENDIF.
CLEAR: lv_amount, wa_exch.
SUBTRACT 1 FROM <fs_asof>.
ADD 1 TO lv_check.
ENDWHILE.
WRITE AT lv_pos2 sy-vline.
* write sub-total for every year for the same account code(HKONT)
AT END OF year_dum.
FORMAT COLOR COL_TOTAL.
WRITE: / sy-vline,
<fs_bsis_bsas>-year_dum,
'Sub-total:'.
IF NOT lv_dmbtr IS INITIAL.
WRITE: AT 76(20) lv_dmbtr RIGHT-JUSTIFIED.
ENDIF.
IF NOT lv_index1 IS INITIAL.
WRITE: (20) lv_index1 RIGHT-JUSTIFIED.
ENDIF.
IF NOT lv_index2 IS INITIAL.
WRITE (20) lv_index2 RIGHT-JUSTIFIED.
ENDIF.
IF NOT lv_index3 IS INITIAL.
WRITE (20) lv_index3 RIGHT-JUSTIFIED.
ENDIF.
IF NOT lv_index4 IS INITIAL.
WRITE (20) lv_index4 RIGHT-JUSTIFIED.
ENDIF.
IF NOT lv_index5 IS INITIAL.
WRITE (20) lv_index5 RIGHT-JUSTIFIED.
ENDIF.
IF NOT lv_index6 IS INITIAL.
WRITE: (20) lv_index6 RIGHT-JUSTIFIED.
ENDIF.
IF NOT lv_index7 IS INITIAL.
WRITE: (20) lv_index7 RIGHT-JUSTIFIED.
ENDIF.
WRITE: AT lv_pos2 sy-vline.
FORMAT COLOR OFF.
CLEAR: lv_index1, lv_index2, lv_index3,
lv_index4, lv_index5, lv_index6,
lv_index7, lv_dmbtr.
ENDAT.
* write total for a given account code(HKONT)
AT END OF hkont.
FORMAT COLOR COL_TOTAL INTENSIFIED.
WRITE: / sy-vline,
'Total', <fs_bsis_bsas>-hkont, 'GI'.
IF NOT lv_dmbtr_tot IS INITIAL.
WRITE: AT 76(20) lv_dmbtr_tot RIGHT-JUSTIFIED.
ENDIF.
IF NOT lv_total1 IS INITIAL.
WRITE: (20) lv_total1 RIGHT-JUSTIFIED.
ENDIF.
IF NOT lv_total2 IS INITIAL.
WRITE (20) lv_total2 RIGHT-JUSTIFIED.
ENDIF.
IF NOT lv_total3 IS INITIAL.
WRITE (20) lv_total3 RIGHT-JUSTIFIED.
ENDIF.
IF NOT lv_total4 IS INITIAL.
WRITE (20) lv_total4 RIGHT-JUSTIFIED.
ENDIF.
IF NOT lv_total5 IS INITIAL.
WRITE (20) lv_total5 RIGHT-JUSTIFIED.
ENDIF.
IF NOT lv_total6 IS INITIAL.
WRITE: (20) lv_total6 RIGHT-JUSTIFIED.
ENDIF.
IF NOT lv_total7 IS INITIAL.
WRITE: (20) lv_total7 RIGHT-JUSTIFIED.
ENDIF.
WRITE: AT lv_pos2 sy-vline.
FORMAT COLOR OFF.
CLEAR: lv_total1, lv_total2, lv_total3,
lv_total4, lv_total5, lv_total6,
lv_total7, lv_dmbtr_tot.
WRITE: / sy-uline(lv_pos2).
ENDAT.
lv_asof = p_year + 6.
IF lv_asof > p_asof+0(4).
lv_asof = p_asof+0(4).
ENDIF.
CLEAR lv_check.
ADD 1 TO lv_check.
FORMAT COLOR OFF.
ENDLOOP.
SKIP 5.
ex_bsis_bsas[] = it_bsis_bsas[].
ex_exch[] = it_exch[].
ENDMETHOD.
* METHOD conversion *
METHOD conversion.
IF year = p_asof+0(4).
* get last date of a given month and year
CALL FUNCTION 'LAST_DAY_OF_MONTHS'
EXPORTING
day_in = p_asof
IMPORTING
last_day_of_month = lv_givendate
* EXCEPTIONS
* DAY_IN_NO_DATE = 1
* OTHERS = 2
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ELSE.
* get last date of a given year
CALL FUNCTION 'HR_E_GET_FISC_YEAR_DATES'
EXPORTING
fisc_year = year
IMPORTING
* FISC_FECINI =
fisc_fecfin = lv_date
* EXCEPTIONS
* ERROR = 1
* OTHERS = 2
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDIF.
IF lv_date IS INITIAL.
t_date = lv_givendate.
CLEAR lv_givendate.
ELSE.
t_date = lv_date.
CLEAR lv_date.
ENDIF.
* get exchange rate from a given currency to US dollars
CALL FUNCTION 'BAPI_EXCHANGERATE_GETDETAIL'
EXPORTING
rate_type = rate_type
from_curr = from_curr
to_currncy = to_curr
date = t_date
IMPORTING
exch_rate = t_exch_rate
* RETURN =
ENDMETHOD.
ENDCLASS.
* CLASS lcl_summary IMPLEMENTATION
CLASS lcl_summary IMPLEMENTATION.
* METHOD display_summary *
METHOD display_summary.
TYPES: BEGIN OF t_total,
hkont TYPE bsis-hkont,
waers TYPE bsis-waers,
wrbtr TYPE bsis-wrbtr,
dmbtr TYPE bsis-dmbtr,
gl_bal TYPE bsis-wrbtr,
unrealized TYPE bsis-wrbtr,
END OF t_total.
DATA: lv_balance TYPE bsis-wrbtr,
lv_date(10) TYPE c,
lv_color(1) TYPE n VALUE '1',
lv_wrbtr TYPE bsis-wrbtr,
lv_dmbtr TYPE bsis-dmbtr,
lv_gl_bal TYPE bsis-wrbtr,
lv_unrealized TYPE bsis-wrbtr,
lv_old_year TYPE bsis-gjahr,
lv_new_year TYPE bsis-gjahr,
lv_flag(1) TYPE n,
lt_bsis_bsas_dum TYPE STANDARD TABLE OF t_bsis_bsas,
lt_total TYPE STANDARD TABLE OF t_total,
wa_total LIKE LINE OF lt_total.
FIELD-SYMBOLS: <fs_dum> LIKE LINE OF lt_bsis_bsas_dum.
it_bsis_bsas[] = im_bsis_bsas[].
it_exch[] = im_exch[].
CLEAR wa_exch.
SORT it_bsis_bsas BY hkont year_dum DESCENDING waers.
lt_bsis_bsas_dum[] = it_bsis_bsas[].
LOOP AT it_bsis_bsas ASSIGNING <fs_bsis_bsas>.
AT NEW hkont.
MOVE <fs_bsis_bsas>-hkont TO wa_summary-hkont.
ENDAT.
AT NEW year_dum.
MOVE <fs_bsis_bsas>-year_dum TO wa_summary-year_dum.
ENDAT.
AT NEW waers.
MOVE <fs_bsis_bsas>-waers TO wa_summary-waers.
t_from_curr = wa_summary-waers.
READ TABLE it_exch WITH KEY year = wa_summary-year_dum
rate = t_rate_type
from_curr = t_from_curr
INTO wa_exch TRANSPORTING exch_rate.
IF sy-subrc = 0.
MOVE wa_exch-exch_rate TO wa_summary-rate.
ELSE.
CALL METHOD me->conversion
EXPORTING
year = wa_summary-year_dum
rate_type = t_rate_type
from_curr = t_from_curr
to_curr = t_to_curr
IMPORTING
exch_rate = t_exch_rate
t_date = t_date_out.
IF t_exch_rate-exch_rate_v IS INITIAL.
WRITE t_date_out TO lv_date USING EDIT MASK '__/__/____'.
CALL FUNCTION 'CONVERSION_EXIT_INVDT_INPUT'
EXPORTING
input = lv_date
IMPORTING
output = lv_date.
SELECT SINGLE ukurs FROM tcurr
INTO t_exch_rate-exch_rate_v
WHERE kurst = 'ME'
AND fcurr = 'PHP'
AND tcurr = 'USD'
AND gdatu = lv_date.
ENDIF.
IF NOT t_exch_rate-exch_rate_v IS INITIAL.
t_exch_rate-exch_rate_v = abs( t_exch_rate-exch_rate_v ).
MOVE t_exch_rate-exch_rate_v TO wa_summary-rate.
ENDIF.
ENDIF.
ENDAT.
LOOP AT lt_bsis_bsas_dum ASSIGNING <fs_dum>
WHERE hkont = wa_summary-hkont
AND year_dum = wa_summary-year_dum
AND waers = wa_summary-waers.
ADD <fs_dum>-wrbtr TO wa_summary-wrbtr.
ADD <fs_dum>-dmbtr TO wa_summary-dmbtr.
IF NOT wa_exch-exch_rate IS INITIAL.
IF <fs_dum>-waers = 'PHP'.
lv_balance = 1 / wa_exch-exch_rate * wa_exch-exch_rate.
lv_balance = <fs_dum>-wrbtr * lv_balance.
ADD lv_balance TO wa_summary-gl_bal.
ELSE.
lv_balance = <fs_dum>-wrbtr * wa_exch-exch_rate.
ADD lv_balance TO wa_summary-gl_bal.
ENDIF.
ENDIF.
CLEAR lv_balance.
DELETE lt_bsis_bsas_dum.
ENDLOOP.
DELETE it_bsis_bsas WHERE hkont = wa_summary-hkont
AND year_dum = wa_summary-year_dum
AND waers = wa_summary-waers.
wa_summary-unrealized = wa_summary-dmbtr - wa_summary-gl_bal.
APPEND wa_summary TO it_summary.
CLEAR wa_summary.
ENDLOOP.
IF NOT it_summary[] IS INITIAL.
CALL METHOD me->display_summary_header.
CLEAR wa_summary.
SORT it_summary BY hkont year_dum DESCENDING waers.
*/ WRITE SUMMARY
LOOP AT it_summary INTO wa_summary.
IF lv_color = 1.
lv_color = 2.
ELSE.
lv_color = 1.
ENDIF.
MOVE: wa_summary-hkont TO wa_total-hkont,
wa_summary-waers TO wa_total-waers.
READ TABLE lt_total WITH KEY hkont = wa_summary-hkont
waers = wa_summary-waers
INTO wa_total.
IF sy-subrc = 0.
ADD: wa_summary-wrbtr TO wa_total-wrbtr,
wa_summary-dmbtr TO wa_total-dmbtr,
wa_summary-gl_bal TO wa_total-gl_bal,
wa_summary-unrealized TO wa_total-unrealized.
MODIFY lt_total FROM wa_total TRANSPORTING
wrbtr dmbtr gl_bal unrealized
WHERE hkont = wa_summary-hkont
AND waers = wa_summary-waers.
CLEAR wa_total.
lv_flag = 1.
ELSE.
ADD: wa_summary-wrbtr TO wa_total-wrbtr,
wa_summary-dmbtr TO wa_total-dmbtr,
wa_summary-gl_bal TO wa_total-gl_bal,
wa_summary-unrealized TO wa_total-unrealized.
ENDIF.
* write sub-total for every end of a year
lv_new_year = wa_summary-year_dum.
IF lv_new_year <> lv_old_year AND NOT lv_old_year IS INITIAL.
FORMAT COLOR COL_TOTAL INTENSIFIED OFF.
WRITE: / sy-vline,
(42) 'Subtotal',
(18) lv_wrbtr RIGHT-JUSTIFIED,
(18) lv_dmbtr RIGHT-JUSTIFIED,
(18) lv_gl_bal RIGHT-JUSTIFIED,
(18) lv_unrealized RIGHT-JUSTIFIED,
sy-vline.
FORMAT COLOR OFF.
CLEAR: lv_wrbtr, lv_dmbtr, lv_gl_bal, lv_unrealized.
ENDIF.
lv_old_year = lv_new_year.
ADD: wa_summary-wrbtr TO lv_wrbtr,
wa_summary-dmbtr TO lv_dmbtr,
wa_summary-gl_bal TO lv_gl_bal,
wa_summary-unrealized TO lv_unrealized.
FORMAT INTENSIFIED OFF COLOR = lv_color.
WRITE: / sy-vline,
(15) wa_summary-hkont,
(04) wa_summary-year_dum,
(05) wa_summary-waers,
(15) wa_summary-rate,
(18) wa_summary-wrbtr,
(18) wa_summary-dmbtr,
(18) wa_summary-gl_bal,
(18) wa_summary-unrealized,
sy-vline.
FORMAT COLOR OFF.
IF NOT lv_flag = 1.
APPEND wa_total TO lt_total.
CLEAR wa_total.
ENDIF.
AT END OF hkont.
* write the last sub-total
FORMAT COLOR COL_TOTAL INTENSIFIED OFF.
WRITE: / sy-vline,
(37) 'Subtotal', wa_summary-year_dum,
(18) lv_wrbtr RIGHT-JUSTIFIED,
(18) lv_dmbtr RIGHT-JUSTIFIED,
(18) lv_gl_bal RIGHT-JUSTIFIED,
(18) lv_unrealized RIGHT-JUSTIFIED,
sy-vline.
FORMAT COLOR OFF.
CLEAR: lv_wrbtr, lv_dmbtr, lv_gl_bal, lv_unrealized.
* write the total for a given account code(HKONT)
FORMAT COLOR COL_TOTAL INTENSIFIED ON.
LOOP AT lt_total INTO wa_total
WHERE hkont = wa_summary-hkont.
WRITE: / sy-vline.
IF sy-tabix = 1.
WRITE: (25) 'Total', wa_summary-hkont.
ENDIF.
IF sy-tabix = 1.
WRITE: (05) wa_total-waers,
(18) wa_total-wrbtr,
(18) wa_total-dmbtr,
(18) wa_total-gl_bal,
(18) wa_total-unrealized,
sy-vline.
ELSE.
WRITE: AT 40(05) wa_total-waers,
(18) wa_total-wrbtr,
(18) wa_total-dmbtr,
(18) wa_total-gl_bal,
(18) wa_total-unrealized,
sy-vline.
ENDIF.
ENDLOOP.
FORMAT COLOR OFF.
ENDAT.
CLEAR lv_flag.
ENDLOOP.
WRITE: / sy-uline(122).
ENDIF.
ENDMETHOD.
* METHOD display_summary *
METHOD display_summary_header.
FORMAT COLOR COL_HEADING.
WRITE: / sy-uline(122),
/ sy-vline,
(15) 'GL Account' CENTERED,
(04) 'Year' CENTERED,
(05) 'Curr.' CENTERED,
(15) 'Rate' CENTERED,
(18) 'Trans. Curr' CENTERED,
(18) 'Local Curr.' CENTERED,
(18) 'GL Balance' CENTERED,
(18) 'Unrealized' CENTERED,
sy-vline,
/ sy-uline(122).
FORMAT COLOR OFF.
ENDMETHOD.
ENDCLASS.
* CLASS lcl_handler IMPLEMENTATION
CLASS lcl_handler IMPLEMENTATION.
METHOD handle_event.
MESSAGE i008 WITH 'No data found for account no:' hkont.
LEAVE LIST-PROCESSING.
ENDMETHOD.
ENDCLASS.
* TOP-OF-PAGE *
TOP-OF-PAGE.
DATA: o_top TYPE REF TO lcl_main.
CREATE OBJECT o_top.
CALL METHOD o_top->top_of_page.
* START-OF-SELECTION *
START-OF-SELECTION.
DATA: o_main TYPE REF TO lcl_main,
o_handler TYPE REF TO lcl_handler,
o_summary TYPE REF TO lcl_summary,
it_bsis_bsas_dum TYPE STANDARD TABLE OF t_bsis_bsas,
it_exch_dum LIKE it_exch.
CREATE OBJECT: o_main, o_handler, o_summary.
SET HANDLER o_handler->handle_event FOR ALL INSTANCES.
CALL METHOD o_main->get_data.
CALL METHOD o_main->get_diff.
CALL METHOD o_main->display_subheader.
CALL METHOD o_main->display_header.
CALL METHOD o_main->get_rate_and_show
IMPORTING
ex_bsis_bsas = it_bsis_bsas_dum
ex_exch = it_exch_dum.
CALL METHOD o_summary->display_summary
EXPORTING
im_bsis_bsas = it_bsis_bsas_dum
im_exch = it_exch_dum. -
Discoverer export takes a lot of time
HI All,
"DB Version is Oracle 11g r2" and "OracleBI Discoverer Viewer Version 10.1.2.48.18" . We are trying to export the data to our local machines which takes infinite time. And finally we end up running the sql query in toad and save-to-excel.
I have tried to check in oracle documentation and googled also.. but did not find much info on this,. Please suggest.
Regards
KKHi ,
I am trying with both.
Also , i have chcked it from directly logging into the server through VNC to rule out network gaps. But its taking almost infinite time before it errors out.
Though i have raised an SR with oracle , they are not very helpful here as its an unsupported version. Can you suggest some parameter to improve upon the export rate.
I would use csv/xls which ever comes faster.
A check has been done with viewer only. I would try to check with desktop edition as well and update.
Thanks for the idea :D
Regards
KK -
Is there a way to fix the exchange rate of PO item condition type ?
Hello all,
We have an agreed selling price in RMB from the supplier and the export rate(RMB to USD) is given by them according to delivery date. But we pay in USD. Thus PO header is USD and using M rate but PO price condition type in PO item is RMB -> then convert to USD and sum up into gross price. We want to control the way RMB is converted to USD in the item level.
e.g. PO order currency is USD, PO header exchange rate is a fixed rate input by user
(hedge rate USD -> Local company currency)
PO item 1 agreed PO price is 100 RMB -> PO item condition's rate is 100 RMB per pc
-> export rate RMB to USD fixed at 8 -> 100 / 8 USD
PO item 2 agreed PO price is 200 RMB -> PO item condition's rate is 200 RMB per pc
at export rate -> 200 / 8 USD
Total PO value in USD = 300 RMB / 8 (we don't want it to convert 300 RMB using M rate)
Appreciate if anyone has a solution for this similar case.KiltedTim wrote:
The only way to do so and preserve your warranty is a replacement from Apple. US$199 without AppleCare+, US$49 with. If it doesn't affect the functionality, though, they may not give you that option.
It's not that big of a deal. I'm just seeing if anyone knows how to bend it back straight from experience or imagination. -
ABAP- JAVA : How to unzip a zip file sent by ABAP
Hello,
We are using JCO to exchange the XML strings (File Sizes can range upto couple of MBs) between ABAP and JAVA. We were earlier using a STRING parameter for XML data exchange. This approach was resulting in huge performance overheads. As per our initial performance investigations, we have identified that time taken for XML exchange using JCO is the major bottlenecks.
Currently we are evaluating Zip - Exchange - Unzip mechanism for XML exchange.
We now try to ZIP the export content using following ABAP code:
TRY.
CALL METHOD cl_abap_gzip=>compress_text
EXPORTING
text_in = lv_xmlstring
IMPORTING
gzip_out = ev_xmlstring.
This returns an XSTRING (zipped) which is lesser in size as compared to the earlier xml STRING.For zipping the XML String this code works fine. But on java end on using the following code (for unzipping):
public static String unzipStringFromBytes( byte[] bytes ) throws IOException
ByteArrayInputStream bis = new ByteArrayInputStream(bytes);
BufferedInputStream bufis = new BufferedInputStream(new InflaterInputStream(bis));
ByteArrayOutputStream bos = new ByteArrayOutputStream();
byte[] buf = new byte[1024];
int len;
while( (len = bufis.read(buf)) > 0 )
bos.write(buf, 0, len);
String retval = bos.toString();
bis.close();
bufis.close();
bos.close();
return retval;
We get the following error:
java.util.zip.DataFormatException: unknown compression method
at java.util.zip.Inflater.inflateBytes(Native Method)
at java.util.zip.Inflater.inflate(Inflater.java:215)
Please share java code snippet which we can use in our program to retrieve our initial XML string.
Best Regards,
AayushHi,
i took a sequence '0123456789' and gziped it with your ABAP code snipped.
Result is in HEX:
'33 30 34 32 36 31 35 33 B7 B0 04 00'
Than i took an good old gzip executable and gzipped a text file with the same sequence in compression mode 6(default of ABAP Method).
Result in HEX:
'1F 8B 08 08 BA B1 D1 45 00 0B 31 2E 74 78 74 00'
'33 30 34 32 36 31 35 33 B7 B0 04 00 C6 C7 84 A6' <-- quiet similar with ABAP gzip data
'0A 00 00 00'
It seems that some gzip headers and trailers are missing from ABAP Processor's output, i don't know why, maybe it will help you to fake the file headers's to your data section: http://www.gzip.org/zlib/rfc-gzip.html
Other topic is your Exception: java.util.zip.Inflater.inflate(Inflater.java:215)
Inflater is used for ZLIB compressed files, try to pass your InputStream to an Object of [java.util.zip.GZIPInputStream] like:
http://www.galileocomputing.de/openbook/javainsel6/javainsel_12_010.htm [Listing 12.29]
Let me know if it works and have fun..... -
Does anyone have documentation on how to do a refresh for an ABAP / Java system? I've done a system copy to create a new system with SAVLIB/RSTLIB by:
Export the SDM
Saved ABAP Database
Saved Java Database
Run the system copy with RSTLIB option on the target system, but when I did this, the system didn't already exist on the target side.
But if I have a development system (say abc) and want to refresh it with production (xyz), how would I do this with the addition of a java stack?
We have documentation and have done this plenty with just an ABAP stack, but not so with an ABAP/JAVA stack.
I would think if I tried to use the system copy method mentioned above it would error because the target system (abc) already exists.
Can anyone clarify for me? Thank you.
~TJHi TJ.
Looks like your question is not specific for SAP on System i. Most likely you get more answers when you ask it in an platform independent forum. I would suggest the SAP NetWeaver Application Server forum.
But I think it would be very interesting for many of us here in this forum to let us know if there is a easy way to accomplish the refresh.
Best regrads,
Jan -
Shiiping/Export mapping problem in SAP B1
Hi all:
My present client(SE) has a case of transaction where in for the case of Export they based on Sales Order they directly use to create A/R Invoice
(Commercial) after which they send this Commercial Invoice to Exporter(agent) who further book the space and time of actual delivery from the ship yard. After confirmation of time and the export rate he used to send his Bill to us(SE) back so that we(SE) can send the material/goods at the shipyard at actual time and date of delivery.
But while creating Commercial A/R Invoice my stock is getting reduced but in actual case it is not.
Also while going to make an excise invoice for the same base documents SAP B1 gives error as"base document is already closed". So I acnt prepare Excise Invoice also.
Kindly give me the soution of this mess.
Regards
Khushwant Singh Sansowa
India(Mumbai)Hello Khushwant Singh,
It is important to understand the Sales Order > Delivery > Invoice process in Business One.
Though most business use the 3 step process of SO > Del > Invoice, the delivery can be an optional step in Business One. You could create an Invoice directly from a Sales Order and SBO creates all necessary Journal entries in the Invoice transaction and closes the Sales Order.. and thats why in your case when you are creating the Invoice (commercial) from Sales Order the Sales Order gets closed and the Stock is Reduced.
You will need determine what data is required to printed in the Commercial Invoice and at what stage you want to realise Revenue. Based on this you can use one of the following two options:
option 1: Customize the Sales Order template (PLD) and use it as a Commercial Invoice, Create the delivery and Excise Invoice
option 2: Create a A/R Reserve Invoice
option 3: Create a Draft delivery / draft Invoice and use it as a Commercial Invoice
If you need further help on this please let me know. Also provide me details of how you want to handle the whole process.
Regards
Suda -
Why does InDesign CS4 crash when exporting to PDF?
I have a 72 page document and when I export to PDF, it gets to the end and crashes. I can export to pdf in 10 page chunks successfully, but with 30 or more pages it crashes. Could it be temporary file or memory problem. Appreciate any help as I am new to InDesign and need to get this document to print soon.
This may be of no help to KodiKodi, but it may be of assistance to someone else trying to export large files to PDF.
I was attempting to export a large CS4 document (800 pages, 200 MB) on a G5 iMac (2.5 GB RAM), to a 3GB single-page PDF file. The export worked in one go.
Then, for a particular reason, I placed the entire PDF back into a new InDesign document which turned into a 800-page, 400 MB file, double the original size even though it was really the same file but in a different format. I exported that single-page InDesign file to PDF using the spread format, but it wouldn't export in one pass. Wouldn't do it two passes either. I noticed as the export progressed it got slower and slower. The export started at the rate of about 1 page every two seconds, but by about the 400 page mark was down to 1 page every 10 seconds or longer, but would never come to anything.
So, I tried exporting as 100 page chunks (2-99, 100-199 ...). Took about 2 minutes for the first 100 pages, but I noticed the export rate was slowing down. The second hundred pages took significantly longer than 2 minutes. I found I could get back the export speed if I closed the file after the first hundred, and reopened it (even though it was 400 MB, it would open in a few seconds), and then export the second hundred pages; and so on all through the file.
For some reason, closing the InDesign file must reset memory allocation or something like that, with the result that exporting to PDF retains it's normal speed. -
Wht doe memory id means abap memory?
hi
can any one eloborate me on teh bleow code wht does it means and from where the value of wa_quantiy coming from memory id????
import wa_quantity ( a internal table) in to wa_quantity( internal table) from memory id 'wa_quantity'.
regards
AroraNishanth,
To put it in simple: "When ever we need to pass values from one session memory to another session memory we use IMPORT and EXPORT parameters."
By doing this we import value to ABAP memory and Exporting the same from ABAP memory in other sesion. In short ABAP memory is global. Session memory is local .
Example : Suppose wa_quantity is an internal table in one program (say Zprog1) and you are want to use it in another program (say Zprog2) so this internal table will not be available for this program.
What we need to do.
Export wa_quantity from wa_quantity to memory id MID1.
here - Export <same name you need to use in p1> from <name of itab in prg1> to <unique id>
In program 2 : you need to
IMPORT wa_quantity from wa_quantity from meory id MID1.
You need to have same internal table structure in both programs.
All the very best to you.
- Mohan.
Maybe you are looking for
-
How to get the layout values in F4 help from Other program ?
Hello All, I have a program P1which calls other program P2 . When I execute P1 I have a parameter for Layout with F4. When I press F4 I want the help values which are there in the lay out of the other program P2. For this I'm using the follow
-
How do I add a reminder for a future date in my reminders with the os 7
How do I add a reminder for a furure date in my reminder? I can't find a calendar anywhere in reminder so that I can select a date and then type my reminder.
-
My exchange message text is gibberish, not words
I have a Microsoft exchange account set up in Mail. The problem is that when I go to look at the message, it looks like this It only looks like this when I view the entire message. The two line preview shows the actual words. Can anyone help me fig
-
Problems with the installation of SAP NetWeaver 7.0...
hi all, I want to install SAP Netweaver 7.0 SR3 on Windows 2008 Server, but never finishes installing... I do not see any error, it stays in step 20 and no more progress.. Is there some compatibility issues with windows 2008 server? thanks!
-
Standard workflow report to monitor each and every work flow activity
hi experts, Is there any standard report or table which gives the status of workflow activity. i.e., approved/rejected/person responsible...etc.. Kindly give some suggestions.