Problem with property refresh in code view

I am suddenly noticing a problem in CS3 (v 9.0 build 3481),
OSX 10.4.11. In Code view (NOT Split view), any change to the code
causes the property inspector to display the message "You have made
changes to the code. To edit selection properties click refresh or
press F5".
It is my understanding that this feature is intended to
refresh the Design view when working in Split mode. I have not used
DW much in the last few weeks, but I never recall having this come
up before, and I work in code view quite a bit. Also, possibly
related, the tag selector strip at the bottom goes blank at the
same time the message appears in the property inspector.
This will be a significant impediment if it continues. Am I
crazy and it's always been this way, or is there a bug or setting
that I've inadvertently changed? I understand why refreshing is
necessary in Split view but I cannot see what purpose this could
possibly serve in Code view.
Ted

quote:
Originally posted by:
Tedly61Am I crazy and it's always been this way, or is
there a bug or setting that I've inadvertently changed? I
understand why refreshing is necessary in Split view but I cannot
see what purpose this could possibly serve in Code view.
This is how it's always been for me with both DW 8 and DW CS3
for Windows. Can't say with regard to the Mac versions.

Similar Messages

  • Problem with replication based on materialized view

    Problem with replication based on materialized view...
    Given:
    1. Source: S-1
    2. Targets: T-1, T-2
    3. DB links: from T-1 to S-1, from T-2 to S-1
    Required replicate table TBL on S-1 to T-1, T-2 via db links.
    On S-1 was created materialized view log with PK on TBL. On T-1, T-2 were created mat.views as "on prebuilt table refresh fast on demand". In case of get "ORA-12034: materialized view log younger than last refresh" or initial load - perform complete refresh. Initial load on T-1 takes about 1 hour, on T-2 - about 12 hours. Refresh is executed via job with minutely interval. If refresh is running then it is not performed.
    Problem: after initial load on T-1 performs fast refresh, but on T-2 raised ORA-12034 and complete performs again.
    What's wrong?

    34MCA2K2, Google lover?
    I confess perhaps I gave a little info.
    View log was created before MV.
    It was the first initial load.
    No refresh failed.
    No DDL.
    No purge log.
    Not warehouse.
    There is no such behavior for MVs on another sites.
    P.S. I ask help someone who knows what's wrong or who faced with it or can me  follow by usefull link.
    P.P.S. It's a pity that there is no button "Useless answer"

  • I have problems with seeing my bookmarks, file, view, edit...buttons. I tried other shortcuts. I noticed that all of my bookmarks are located in the Internet Explorer browsers, how can I restore setting back to Mozilla Firefox?

    I have problems with seeing my bookmarks, file, view, edit...buttons. I tried other shortcuts. I noticed that all of my bookmarks are located in the Internet Explorer browsers, how can I restore setting back to Mozilla Firefox?

    Is the menu bar missing (the one containing File, View, Edit etc)? If it is, the following link shows how to restore it - https://support.mozilla.com/kb/Menu+bar+is+missing

  • Unable to update itunes. help. error message when trying to update to latest version of itunes. "the installer has encountered an unexpected error installing this package. this may indicate a problem with this package. error code 2721"

    unable to update itunes. help. error message when trying to update to latest version of itunes. "the installer has encountered an unexpected error installing this package. this may indicate a problem with this package. error code 2721"

    Hello chae84swangin,
    I recommend following the steps in the article below when getting an error message trying to install iTunes:
    Trouble installing iTunes or QuickTime for Windows
    http://support.apple.com/kb/HT1926
    Thank you for using Apple Support Communities.
    Best,
    Sheila M.

  • NMac Pro 6core D500 problems with screen refresh: 10.9.3 warning!

    Avoid 10.9.3 on the Mac Pro 6 core, D500.
    Problem with screen refresh using Motion soon after updating OSX from Mac Pro late 2013 version of 10.9.2.
    I tried my Asus HDMI at all resolutions but to no avial. The screen juddered like it was Windows 95 without any GPU drivers.
    Apple's Tech Support had me use many key commands and finally we found out there was no issue with my hardware. Apple suggested a clean install before sending it back for repair. I was fortunate to have had made a backup in the Time Machine of my computer soon after installing all my apps. After restoring my computer is running 10.9.2 version made for the Mac Pros Late 2013. There are no more problems with screen redraw after using Motion.
    So, it is clear I cannot upgrade my Mac Pro to 10.9.3 while the issue with Motion's render engine messing with my screen refresh continues. Returning to 10.9.2 has made me realize 10.9.3 is slower and not as stable.
    I would suggest not upgrading unless you have a 4k monitor.

    Avoid 10.9.3 on the Mac Pro 6 core, D500.
    Problem with screen refresh using Motion soon after updating OSX from Mac Pro late 2013 version of 10.9.2.
    I tried my Asus HDMI at all resolutions but to no avial. The screen juddered like it was Windows 95 without any GPU drivers.
    Apple's Tech Support had me use many key commands and finally we found out there was no issue with my hardware. Apple suggested a clean install before sending it back for repair. I was fortunate to have had made a backup in the Time Machine of my computer soon after installing all my apps. After restoring my computer is running 10.9.2 version made for the Mac Pros Late 2013. There are no more problems with screen redraw after using Motion.
    So, it is clear I cannot upgrade my Mac Pro to 10.9.3 while the issue with Motion's render engine messing with my screen refresh continues. Returning to 10.9.2 has made me realize 10.9.3 is slower and not as stable.
    I would suggest not upgrading unless you have a 4k monitor.

  • I am trying to get the free trial to cc but it said there seems to be a problem with the files (Error code: 205)

    I am trying to get the free trial to cc but it said there seems to be a problem with the files (Error code: 205) please help

    BOILERPLATE TEXT:
    Note that this is boilerplate text.
    If you give complete and detailed information about your setup and the issue at hand,
    such as your platform (Mac or Win),
    exact versions of your OS, of Photoshop (not just "CS6", but something like CS6v.13.0.6) and of Bridge,
    your settings in Photoshop > Preference > Performance
    the type of file you were working on,
    machine specs, such as total installed RAM, scratch file HDs, total available HD space, video card specs, including total VRAM installed,
    what troubleshooting steps you have taken so far,
    what error message(s) you receive,
    if having issues opening raw files also the exact camera make and model that generated them,
    if you're having printing issues, indicate the exact make and model of your printer, paper size, image dimensions in pixels (so many pixels wide by so many pixels high). if going through a RIP, specify that too.
    etc.,
    someone may be able to help you (not necessarily this poster, who is not a Windows user).
    a screen shot of your settings or of the image could be very helpful too.
    Please read this FAQ for advice on how to ask your questions correctly for quicker and better answers:
    http://forums.adobe.com/thread/419981?tstart=0
    Thanks!

  • Problem with Property Panel

    WinXP Sp3
    In CS4, the Property Panel at the bottom of the page shows
    the second row of
    CSS buttons, partially obscured. Is there a way of fixing
    this? I have tried
    changing the resolution on my monitor to every conceivable
    combination, but
    nothing happens.
    Any suggestions will be greatly appreciated.
    Baron

    We are having the same issue with the Remote Panels.  Occasionally when a user using remote panels releases
    control of the panel the LabView program crashes with an Error 1 code at some of the property nodes.
    Some of the property nodes are writes and some are reads.  Which one it errors on differs each time.
    We are currently using Labview 8.2.1.  The program was originally written in Labview 7.0.  We did not
    have this problem in 7.0.
    I have been progressively removing some of the "offending" property nodes, but LabView just errors out with a
    code of 1 on a different property node.
    I believe there is a bug in the NI code for the remote panel somewhere.
    If anyone knows a good workaround I would appreciate it.
    Thanks in advance for any help,
    steve

  • Problem in fast refreshing nested materialized views

    Hi all,
    While developing an ODS(Operational Data Store) system, i've created base materialized views from production database to ODS database which would use fast refresh. Now, i need to create nested Materialized views on these base MViews which contains joins and aggregations which should refresh on FAST mechanism.
    But while doing so, got several problems though Nested materialized views can be built using Complete Mechanism. The reporting queries is important and we want it should not hit the production database, rather it should hit the ODS db. But we are failing to build the Nested Materialized views which works on FAST.
    I tried google, oracle docs but all in vain. i tried to do a simple testing which also failed. I would be grateful if anyone can help in in this regard. I'm attaching the test case experimented,
    SCOTT >CREATE MATERIALIZED VIEW LOG ON EMP
    2 WITH ROWID, SEQUENCE(EMPNO, ENAME, JOB,
    3 MGR, HIREDATE, SAL,
    4 COMM, DEPTNO)
    5 INCLUDING NEW VALUES;
    Materialized view log created.
    Elapsed: 00:00:00.03
    SCOTT >
    SCOTT >CREATE MATERIALIZED VIEW LOG ON DEPT
    2 WITH ROWID, SEQUENCE(DEPTNO, DNAME, LOC)
    3 INCLUDING NEW VALUES;
    Materialized view log created.
    Elapsed: 00:00:00.06
    SCOTT >
    SCOTT >CREATE MATERIALIZED VIEW MV_EMP
    2 NOCACHE
    3 ENABLE ROW MOVEMENT
    4 NOLOGGING
    5 NOCOMPRESS
    6 PARALLEL(DEGREE DEFAULT INSTANCES DEFAULT)
    7 BUILD IMMEDIATE
    8 REFRESH FAST ON DEMAND
    9 WITH ROWID
    10 ENABLE QUERY REWRITE
    11 AS
    12 SELECT * FROM EMP;
    Materialized view created.
    Elapsed: 00:00:00.21
    SCOTT >
    SCOTT >CREATE MATERIALIZED VIEW MV_DEPT
    2 NOCACHE
    3 ENABLE ROW MOVEMENT
    4 NOLOGGING
    5 NOCOMPRESS
    6 PARALLEL(DEGREE DEFAULT INSTANCES DEFAULT)
    7 BUILD IMMEDIATE
    8 REFRESH FAST ON DEMAND
    9 WITH ROWID
    10 ENABLE QUERY REWRITE
    11 AS
    12 SELECT * FROM DEPT;
    Materialized view created.
    Elapsed: 00:00:00.14
    SCOTT >CREATE MATERIALIZED VIEW LOG ON MV_EMP
    2 WITH ROWID, SEQUENCE(EMPNO, ENAME, JOB,
    3 MGR, HIREDATE, SAL,
    4 COMM, DEPTNO)
    5 INCLUDING NEW VALUES;
    Materialized view log created.
    Elapsed: 00:00:00.04
    SCOTT >
    SCOTT >CREATE MATERIALIZED VIEW LOG ON MV_DEPT
    2 WITH ROWID, SEQUENCE(DEPTNO, DNAME, LOC)
    3 INCLUDING NEW VALUES;
    Materialized view log created.
    Elapsed: 00:00:00.03
    SCOTT >
    SCOTT >CREATE MATERIALIZED VIEW MV_EMP_DEPT
    2 NOCACHE
    3 ENABLE ROW MOVEMENT
    4 NOLOGGING
    5 NOCOMPRESS
    6 PARALLEL(DEGREE DEFAULT INSTANCES DEFAULT)
    7 BUILD IMMEDIATE
    8 REFRESH FAST ON DEMAND
    9 WITH ROWID
    10 ENABLE QUERY REWRITE
    11 AS
    12 SELECT D.ROWID DEPT_ROWID, E.ROWID EMP_ROWID, E.ENAME, D.DNAME, D.LOC, E.JOB, E.SAL
    13 FROM MV_EMP E,
    14 MV_DEPT D
    15 WHERE E.DEPTNO=D.DEPTNO;
    FROM MV_EMP E,
    ERROR at line 13:
    ORA-12053: this is not a valid nested materialized view
    Elapsed: 00:00:00.17
    SCOTT >
    SCOTT >CREATE MATERIALIZED VIEW MV_EMP_DEPT
    2 NOCACHE
    3 ENABLE ROW MOVEMENT
    4 NOLOGGING
    5 NOCOMPRESS
    6 PARALLEL(DEGREE DEFAULT INSTANCES DEFAULT)
    7 BUILD IMMEDIATE
    8 REFRESH FORCE ON DEMAND
    9 WITH ROWID
    10 ENABLE QUERY REWRITE
    11 AS
    12 SELECT D.ROWID DEPT_ROWID, E.ROWID EMP_ROWID, E.ENAME, D.DNAME, D.LOC, E.JOB, E.SAL
    13 FROM MV_EMP E,
    14 MV_DEPT D
    15 WHERE E.DEPTNO=D.DEPTNO;
    Materialized view created.
    Elapsed: 00:00:00.25
    SCOTT >
    SCOTT >EXECUTE DBMS_MVIEW.REFRESH('MV_EMP','F');
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.04
    SCOTT >EXECUTE DBMS_MVIEW.REFRESH('MV_DEPT','F');
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.04
    SCOTT >EXECUTE DBMS_MVIEW.REFRESH('MV_EMP_DEPT','F');
    BEGIN DBMS_MVIEW.REFRESH('MV_EMP_DEPT','F'); END;
    ERROR at line 1:
    ORA-12004: REFRESH FAST cannot be used for materialized view "SCOTT"."MV_EMP_DEPT"
    ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2254
    ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2460
    ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2429
    ORA-06512: at line 1
    Elapsed: 00:00:00.11
    SCOTT >EXECUTE DBMS_MVIEW.REFRESH('MV_EMP_DEPT','C');
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.35
    SCOTT >

    Sorry,
    By mistake this got posted in the CERTIFICATION forum,
    you can view the same question in the following link:
    Problem in fast refreshing nested materialized views

  • Problem with performance in a code.

    Hi People! I have problems with the performance of this program. The tables that I use have much data and the program take two hours to finish.
    Please, some one tell me how can I make a better performance.
    Thanks!
    This is the program:
    TABLES:
            faglflext,         "Saldos mensuales por cta. 
                                contable y prf center.
            zavg_bal_table,
            skat.              "Chart of accounts
    ********************INTERNAL TABLE DEFINITION***************************
    DATA: BEGIN OF t_itab1 OCCURS 0.
    DATA: rbukrs      TYPE faglflext-rbukrs. "Company Code
    DATA: racct       TYPE faglflext-racct. "Account ID
    DATA: prctr       TYPE faglflext-prctr. "Profit Center
    DATA: kslvt       TYPE faglflext-kslvt. "Total of the period in group currency
    DATA: ksl01       TYPE faglflext-ksl01. "Total of the period in group currency
    DATA: ksl02       TYPE faglflext-ksl02. "Total of the period in group currency
    DATA: ksl03       TYPE faglflext-ksl03. "Total of the period in group currency
    DATA: ksl04       TYPE faglflext-ksl04. "Total of the period in group currency
    DATA: ksl05       TYPE faglflext-ksl05. "Total of the period in group currency
    DATA: ksl06       TYPE faglflext-ksl06. "Total of the period in group currency
    DATA: ksl07       TYPE faglflext-ksl07. "Total of the period in group currency
    DATA: ksl08       TYPE faglflext-ksl08. "Total of the period in group currency
    DATA: ksl09       TYPE faglflext-ksl09. "Total of the period in group currency
    DATA: ksl10       TYPE faglflext-ksl10. "Total of the period in group currency
    DATA: ksl11       TYPE faglflext-ksl11. "Total of the period in group currency
    DATA: ksl12       TYPE faglflext-ksl12. "Total of the period in group currency
    DATA: ksl13       TYPE faglflext-ksl13. "Total of the period in group currency
    DATA: ksl14       TYPE faglflext-ksl14. "Total of the period in group currency
    DATA: ksl15       TYPE faglflext-ksl15. "Total of the period in group currency
    DATA: ksl16       TYPE faglflext-ksl16. "Total of the period in group currency
    DATA: rldnr       TYPE faglflext-rldnr. "Ledger in GL Accounting
    DATA: rtcur       TYPE faglflext-rtcur. "Currency Key
    DATA: txt20       TYPE skat-txt20.      "Description Text
    DATA: saknr       TYPE skat-saknr.      "G/L account number
    DATA: ktopl       TYPE skat-ktopl.      "Chart of Accounts
    DATA: rpmax       TYPE faglflext-rpmax. "Period
    DATA: total_sum   LIKE faglflext-ksl01. "Amount of the first month
    DATA: ryear       LIKE faglflext-ryear. "Fiscal Year
    DATA: year        LIKE faglflext-ryear. "Past Year
    DATA: day_a       TYPE sy-datum.
    DATA: per_day     TYPE rr_umper.
    DATA: average     TYPE vtcur12.
    DATA: agregate    TYPE vtcur12.
    DATA: accumulate  TYPE vtcur12.
    DATA: average_sap TYPE rr_umper.
    DATA: END OF t_itab1.
    DATA: BEGIN OF t_itab2 OCCURS 0.
    DATA: rbukrs    TYPE faglflext-rbukrs. "Company Code
    DATA: racct     TYPE faglflext-racct. "Account ID
    DATA: prctr     TYPE faglflext-prctr. "Profit Center
    DATA: kslvt     TYPE faglflext-kslvt. "Total of the period in group currency
    DATA: ksl01     TYPE faglflext-ksl01. "Total of the period in group currency
    DATA: ksl02     TYPE faglflext-ksl02. "Total of the period in group currency
    DATA: ksl03     TYPE faglflext-ksl03. "Total of the period in group currency
    DATA: ksl04     TYPE faglflext-ksl04. "Total of the period in group currency
    DATA: ksl05     TYPE faglflext-ksl05. "Total of the period in group currency
    DATA: ksl06     TYPE faglflext-ksl06. "Total of the period in group currency
    DATA: ksl07     TYPE faglflext-ksl07. "Total of the period in group currency
    DATA: ksl08     TYPE faglflext-ksl08. "Total of the period in group currency
    DATA: ksl09     TYPE faglflext-ksl09. "Total of the period in group currency
    DATA: ksl10     TYPE faglflext-ksl10. "Total of the period in group currency
    DATA: ksl11     TYPE faglflext-ksl11. "Total of the period in group currency
    DATA: ksl12     TYPE faglflext-ksl12. "Total of the period in group currency
    DATA: ksl13     TYPE faglflext-ksl13. "Total of the period in group currency
    DATA: ksl14     TYPE faglflext-ksl14. "Total of the period in group currency
    DATA: ksl15     TYPE faglflext-ksl15. "Total of the period in group currency
    DATA: ksl16     TYPE faglflext-ksl16. "Total of the period in group currency
    DATA: rldnr     TYPE faglflext-rldnr. "Ledger in GL Accounting
    DATA: rtcur     TYPE faglflext-rtcur. "Currency Key
    DATA: txt20     TYPE skat-txt20.      "Description Text
    DATA: saknr     TYPE skat-saknr.      "G/L account number
    DATA: ktopl     TYPE skat-ktopl.      "Chart of Accounts
    DATA: rpmax     TYPE faglflext-rpmax. "Period
    DATA: total_sum LIKE faglflext-ksl01. "Amount of the first month
    DATA: ryear     LIKE faglflext-ryear. "Fiscal Year
    DATA: year      LIKE faglflext-ryear. "Past Year
    DATA: END OF t_itab2.
    DATA: BEGIN OF t_zavg OCCURS 0.
    DATA: bukrs       TYPE bukrs.
    DATA: racct       TYPE racct.
    DATA: prctr       TYPE prctr.
    DATA: day_a       TYPE sy-datum.
    DATA: per_day     TYPE rr_umper.
    DATA: average     TYPE vtcur12.
    DATA: agregate    TYPE vtcur12.
    DATA: accumulate  TYPE vtcur12.
    DATA: average_sap TYPE rr_umper.
    DATA: END OF t_zavg.
    DATA: BEGIN OF t_zavg2 OCCURS 0.
    DATA: day_a       TYPE sy-datum.
    DATA: racct       TYPE racct.
    DATA: prctr       TYPE prctr.
    DATA: per_day     TYPE rr_umper.
    DATA: average     TYPE vtcur12.
    DATA: agregate    TYPE vtcur12.
    DATA: accumulate  TYPE vtcur12.
    DATA: average_sap TYPE rr_umper.
    DATA: END OF t_zavg2.
    *                      Variable definition                             *
    DATA: balance_month_01          LIKE faglflext-ksl01.
    DATA: balance_month_02          LIKE faglflext-ksl01.
    DATA: balance_month_03          LIKE faglflext-ksl01.
    DATA: balance_month_04          LIKE faglflext-ksl01.
    DATA: balance_month_05          LIKE faglflext-ksl01.
    DATA: balance_month_06          LIKE faglflext-ksl01.
    DATA: balance_month_07          LIKE faglflext-ksl01.
    DATA: balance_month_08          LIKE faglflext-ksl01.
    DATA: balance_month_09          LIKE faglflext-ksl01.
    DATA: balance_month_10          LIKE faglflext-ksl01.
    DATA: balance_month_11          LIKE faglflext-ksl01.
    DATA: balance_month_12          LIKE faglflext-ksl01.
    DATA: balance_month_13          LIKE faglflext-ksl01.
    DATA: current_average_balance   LIKE zavg_bal_table-average.
    DATA: current_balance           LIKE faglflext-ksl01.
    DATA: current_activity_balance  LIKE faglflext-ksl01.
    DATA: current_aggregate_balance LIKE zavg_bal_table-agregate.
    DATA: average_balance_ytd       LIKE zfintbco0001-period_avg_12.
    DATA: count                     TYPE i.
    DATA: wa_itab                   LIKE LINE OF t_itab1.
    DATA: wa_low                    LIKE LINE OF t_itab1.
    DATA: wa_high                   LIKE LINE OF t_itab1.
    DATA: wa_itab2                  LIKE LINE OF t_itab2.
    DATA: wa_zavg2                  LIKE LINE OF t_zavg2.
    DATA: wa_zavg                   LIKE LINE OF t_zavg.
    DATA: t_acum                    TYPE i.
    DATA: companycode               TYPE faglflext-rbukrs.
    DATA: descripcion               TYPE skat-txt20.
    DATA: oref                      TYPE REF TO cx_root,
          emsg                      TYPE zedesc,
          param1                    TYPE zparm,
          parm1                     TYPE zparm.
    DATA: avg1                      TYPE faglflext-ksl01.  "AVG = AVERAGE
    DATA: avg2                      TYPE faglflext-ksl01.
    DATA: avg3                      TYPE faglflext-ksl01.
    DATA: avg4                      TYPE faglflext-ksl01.
    DATA: avg5                      TYPE faglflext-ksl01.
    DATA: avg6                      TYPE faglflext-ksl01.
    DATA: avg7                      TYPE faglflext-ksl01.
    DATA: avg8                      TYPE faglflext-ksl01.
    DATA: avg9                      TYPE faglflext-ksl01.
    DATA: avg10                     TYPE faglflext-ksl01.
    DATA: avg11                     TYPE faglflext-ksl01.
    DATA: avg12                     TYPE faglflext-ksl01.
    DATA: conteo                    TYPE i.
    DATA: conteo2                   TYPE i.
    DATA: numerocta                 TYPE faglflext-racct.
    DATA: profitcenter              TYPE faglflext-prctr.
    DATA: average_month_01          TYPE zavg_bal_table-average.
    DATA: aggregate_month_01        TYPE zavg_bal_table-agregate.
    DATA: average_month_02          TYPE zavg_bal_table-average.
    DATA: aggregate_month_02        TYPE zavg_bal_table-agregate.
    DATA: average_month_03          TYPE zavg_bal_table-average.
    DATA: aggregate_month_03        TYPE zavg_bal_table-agregate.
    DATA: average_month_04          TYPE zavg_bal_table-average.
    DATA: aggregate_month_04        TYPE zavg_bal_table-agregate.
    DATA: average_month_05          TYPE zavg_bal_table-average.
    DATA: aggregate_month_05        TYPE zavg_bal_table-agregate.
    DATA: average_month_06          TYPE zavg_bal_table-average.
    DATA: aggregate_month_06        TYPE zavg_bal_table-agregate.
    DATA: average_month_07          TYPE zavg_bal_table-average.
    DATA: aggregate_month_07        TYPE zavg_bal_table-agregate.
    DATA: average_month_08          TYPE zavg_bal_table-average.
    DATA: aggregate_month_08        TYPE zavg_bal_table-agregate.
    DATA: average_month_09          TYPE zavg_bal_table-average.
    DATA: aggregate_month_09        TYPE zavg_bal_table-agregate.
    DATA: average_month_10          TYPE zavg_bal_table-average.
    DATA: aggregate_month_10        TYPE zavg_bal_table-agregate.
    DATA: average_month_11          TYPE zavg_bal_table-average.
    DATA: aggregate_month_11        TYPE zavg_bal_table-agregate.
    DATA: average_month_12          TYPE zavg_bal_table-average.
    DATA: aggregate_month_12        TYPE zavg_bal_table-agregate.
    DATA: ano                       TYPE i.
    DATA: ano_pasado                TYPE i.
    DATA: ano_corriente             TYPE i.
    DATA: mesdia                    TYPE adb_pfrom.
    DATA: firstline                 TYPE i.
    DATA: kslvt                     TYPE faglflext-kslvt.
    DATA: ksl01                     TYPE faglflext-ksl01.
    DATA: ksl02                     TYPE faglflext-ksl02.
    DATA: ksl03                     TYPE faglflext-ksl03.
    DATA: ksl04                     TYPE faglflext-ksl04.
    DATA: ksl05                     TYPE faglflext-ksl05.
    DATA: ksl06                     TYPE faglflext-ksl06.
    DATA: ksl07                     TYPE faglflext-ksl07.
    DATA: ksl08                     TYPE faglflext-ksl08.
    DATA: ksl09                     TYPE faglflext-ksl09.
    DATA: ksl10                     TYPE faglflext-ksl10.
    DATA: ksl11                     TYPE faglflext-ksl11.
    DATA: ksl12                     TYPE faglflext-ksl12.
    DATA: ksl13                     TYPE faglflext-ksl13.
    DATA: ksl14                     TYPE faglflext-ksl14.
    DATA: ksl15                     TYPE faglflext-ksl15.
    DATA: ksl16                     TYPE faglflext-ksl16.
    DATA: itab_kslvt                TYPE faglflext-kslvt.
    DATA: itab_ksl01                TYPE faglflext-ksl01.
    DATA: itab_ksl02                TYPE faglflext-ksl02.
    DATA: itab_ksl03                TYPE faglflext-ksl03.
    DATA: itab_ksl04                TYPE faglflext-ksl04.
    DATA: itab_ksl05                TYPE faglflext-ksl05.
    DATA: itab_ksl06                TYPE faglflext-ksl06.
    DATA: itab_ksl07                TYPE faglflext-ksl07.
    DATA: itab_ksl08                TYPE faglflext-ksl08.
    DATA: itab_ksl09                TYPE faglflext-ksl09.
    DATA: itab_ksl10                TYPE faglflext-ksl10.
    DATA: itab_ksl11                TYPE faglflext-ksl11.
    DATA: itab_ksl12                TYPE faglflext-ksl12.
    DATA: itab_ksl13                TYPE faglflext-ksl13.
    DATA: itab_ksl14                TYPE faglflext-ksl14.
    DATA: itab_ksl15                TYPE faglflext-ksl15.
    DATA: itab_ksl16                TYPE faglflext-ksl16.
    DATA: itab_bal00                TYPE faglflext-kslvt.
    DATA: itab_bal01                TYPE faglflext-ksl01.
    DATA: itab_bal02                TYPE faglflext-ksl02.
    DATA: itab_bal03                TYPE faglflext-ksl03.
    DATA: itab_bal04                TYPE faglflext-ksl04.
    DATA: itab_bal05                TYPE faglflext-ksl05.
    DATA: itab_bal06                TYPE faglflext-ksl06.
    DATA: itab_bal07                TYPE faglflext-ksl07.
    DATA: itab_bal08                TYPE faglflext-ksl08.
    DATA: itab_bal09                TYPE faglflext-ksl09.
    DATA: itab_bal10                TYPE faglflext-ksl10.
    DATA: itab_bal11                TYPE faglflext-ksl11.
    DATA: itab_bal12                TYPE faglflext-ksl12.
    DATA: itab_bal13                TYPE faglflext-ksl13.
    DATA: itab_bal14                TYPE faglflext-ksl14.
    DATA: itab_bal15                TYPE faglflext-ksl15.
    DATA: itab_bal16                TYPE faglflext-ksl16.
    DATA: numero_de_cta             TYPE  faglflext-racct.
    DATA: company_code              TYPE  faglflext-rbukrs.
    DATA: profit_center             TYPE  faglflext-prctr.
    DATA: currency_code             TYPE  faglflext-rtcur.
    DATA: average_month             TYPE  zavg_bal_table-average.
    DATA: aggregate_month           TYPE  zavg_bal_table-agregate.
    * VARIABLES FOR INTERFACES LOG
    DATA: v_tipo                    TYPE zzfinbc85typede VALUE 1. "Tipo 1 = OUT
    DATA: v_nom_int(9)              TYPE c VALUE 'ZFINFII00'. "Nombre de la interfaz
    DATA: v_modulo(2)               TYPE c VALUE 'FI'. "Modulo
    DATA: v_comp_code(4)            TYPE c VALUE '0000'. "Compañia 0000
    DATA: v_alegacy(4)              TYPE c VALUE '0001'.
    DATA: v_fecha                   TYPE d.
    DATA: v_error2(3)               TYPE c VALUE 'E'.
    DATA: l_sys_exc                 TYPE REF TO  cx_ai_system_fault.
    DATA: last_day                  TYPE sy-datum.
    DATA: numero_mes                TYPE i.
    DATA: ryear                     TYPE faglflext-ryear.
    DATA: numero_cuenta             TYPE faglflext-racct.
    DATA: numero_profit             TYPE faglflext-prctr.
    DATA: day_a                     TYPE i.
    DATA: text(20)                  TYPE c.
    *Acknowledge
    DATA: lo_async_messaging        TYPE REF TO if_wsprotocol_async_messaging,
    lo_msg_id_protocol              TYPE REF TO if_wsprotocol_message_id,
    l_msg_id                        TYPE sxmsguid,
    l_ack_request                   TYPE prx_ack_request_details.
    DATA: fecha                     TYPE sy-datum.
    DATA: fecha_ejecutandose        TYPE sy-datum.
    DATA: fecha_corriente           TYPE i.
    DATA: jan_fin                   TYPE sy-datum.
    DATA: feb_fin                   TYPE sy-datum.
    DATA: febb_fin                  TYPE sy-datum.
    DATA: mar_fin                   TYPE sy-datum.
    DATA: apr_fin                   TYPE sy-datum.
    DATA: may_fin                   TYPE sy-datum.
    DATA: jun_fin                   TYPE sy-datum.
    DATA: jul_fin                   TYPE sy-datum.
    DATA: aug_fin                   TYPE sy-datum.
    DATA: sep_fin                   TYPE sy-datum.
    DATA: oct_fin                   TYPE sy-datum.
    DATA: nov_fin                   TYPE sy-datum.
    DATA: dec_fin                   TYPE sy-datum.
    DATA: porciento1                TYPE faglflext-ksl01.
    DATA: porciento2                TYPE faglflext-ksl01.
    DATA: porciento3                TYPE faglflext-ksl01.
    DATA: porciento4                TYPE faglflext-ksl01.
    DATA: porciento5                TYPE faglflext-ksl01.
    DATA: porciento6                TYPE faglflext-ksl01.
    DATA: porciento7                TYPE faglflext-ksl01.
    DATA: porciento8                TYPE faglflext-ksl01.
    DATA: porciento9                TYPE faglflext-ksl01.
    DATA: porciento10               TYPE faglflext-ksl01.
    DATA: porciento11               TYPE faglflext-ksl01.
    DATA: porciento12               TYPE faglflext-ksl01.
    data: mes(2)                    type c value '00'.
    data: mes_anterior              type sy-datum.
    data: ceros(2)                  type c.
    *DEFINICION DE RANGOS.
    RANGES profit FOR faglflext-prctr.
    RANGES account FOR faglflext-racct.
    RANGES end_month FOR zavg_bal_table-day_a.
    *Sele asigna el fin de mes a cada variable para que sea utilizada luego en el programa.
    jan_fin = '20060131'.
    feb_fin = '20060228'.
    febb_fin = '20060229'.
    mar_fin = '20060331'.
    apr_fin = '20060430'.
    may_fin = '20060531'.
    jun_fin = '20060630'.
    jul_fin = '20060731'.
    aug_fin = '20060831'.
    sep_fin = '20060930'.
    oct_fin = '20061031'.
    nov_fin = '20061130'.
    dec_fin = '20061231'.
    *Inicializando las variables a valor '0'.
    balance_month_01          = 0.
    balance_month_02          = 0.
    balance_month_03          = 0.
    balance_month_04          = 0.
    balance_month_05          = 0.
    balance_month_06          = 0.
    balance_month_07          = 0.
    balance_month_08          = 0.
    balance_month_09          = 0.
    balance_month_10          = 0.
    balance_month_11          = 0.
    balance_month_12          = 0.
    balance_month_13          = 0.
    current_average_balance   = 0.
    current_balance           = 0.
    current_activity_balance  = 0.
    current_aggregate_balance = 0.
    average_balance_ytd       = 0.
    count                     = 0.
    t_acum                    = 0.
    conteo                    = 1.
    conteo2                   = 1.
    ceros                     = '00'.
    *THIS IS A STRUCTURE NAMED E_SKAT. WITH THE TWO FIELDS NAMED SAKNR     *
    *AND TXT20.                                                            *
    TYPES: BEGIN OF e_skat,
             ktopl LIKE skat-ktopl,
             saknr LIKE skat-saknr,
             txt20 LIKE skat-txt20,
           END OF e_skat.
    *         SORT THE STRUCTURE IN ORDER FOR BEST PERFORMANCE             *
    DATA it_skat TYPE SORTED TABLE OF e_skat
         WITH UNIQUE KEY saknr WITH HEADER LINE.
    DATA: wa_skat                  LIKE LINE OF it_skat.
    *           CONSTANT DEFINITIONS (HAVE THE SAME VALUE EVER)            *
    CONSTANTS:
          etype                     TYPE zetype  VALUE 'INTER',       "Utilizada con la funcion de error
          innum                     TYPE zintnum VALUE 'ZFINFII00',       "Utilizada con la funcion de error
          inname                    TYPE zinname VALUE 'Sendero and Cognos Interfase', "Utilizada con la funcion de error
          c_cuenta(10)              TYPE c VALUE '0000270011',
          c_ol(2)                   TYPE c VALUE '0L',
          c_chart(4)                TYPE c VALUE 'CAPI',              "Chart Of Accounts
          c_ceros(17)               TYPE n VALUE '00000000000000.00', "ceros
          acct_cog(10)              TYPE n VALUE '0000270011',        "Numero de cta. que se busca en COGNOS.
          capi(4)                   TYPE c VALUE 'CAPI'.
    *                PARAMETROS de entrada para el usuario.                *
    SELECTION-SCREEN BEGIN OF BLOCK bl1 WITH FRAME TITLE text-001.
    PARAMETERS:
               p_date   TYPE sy-datum DEFAULT sy-datum.       "Fecha de corrida
    IF p_date IS INITIAL.
      p_date = sy-datum.
    ENDIF.
    *     PARAMETEROS DE ENTRADA POR MEDIO DE RANGOS PARA EL USUARIO       *
    SELECT-OPTIONS:
                p_bukrs FOR faglflext-rbukrs.
    SELECTION-SCREEN END OF BLOCK bl1.
    *IF THE USER SELECT THIS CHECK BOX WITH A CHECK MARK THE PROGRAM       *
    *SUBMIT THIS INTERFACE TO.                                             *
    SELECTION-SCREEN BEGIN OF BLOCK bl2 WITH FRAME TITLE text-002.
    PARAMETERS:
              p_cognos    TYPE c AS CHECKBOX.
    SELECTION-SCREEN END OF BLOCK bl2.
    * This statement calls the subroutine specified, SENDERO or COGNOS     *
    IF p_cognos IS INITIAL.
      PERFORM sendero.
    ELSE.
      PERFORM cognos.
    ENDIF.
    EXIT.
    *                      SENEDERO INTERFACE                              *
    FORM sendero.
    *ESTE SELECT EXTRAE LA DATA DE LA TABLA FAGFLEXT Y SKAT
      DATA: msgdetails     TYPE zgl_sendero_file_dt_tab.
      DATA: wa_msgdetails  LIKE LINE OF msgdetails.
      SELECT a~ryear a~rpmax a~rtcur a~racct a~rbukrs a~prctr
             a~kslvt a~ksl01 a~ksl02 a~ksl03 a~ksl04 a~ksl05
             a~ksl06 a~ksl07 a~ksl08 a~ksl09 a~ksl10 a~ksl11
             a~ksl12 a~ksl13 a~ksl14 a~ksl15 a~ksl16 b~saknr
             b~txt20 b~ktopl
            FROM  faglflext AS a INNER JOIN skat AS b ON a~racct = b~saknr AND a~rclnt = b~mandt
            CLIENT SPECIFIED INTO CORRESPONDING FIELDS OF TABLE t_itab1
        WHERE  a~rclnt = sy-mandt
          AND  a~rbukrs IN p_bukrs
          AND  a~rldnr  = '0L'
          AND  a~ryear  = p_date+0(4)
          AND  b~spras  EQ sy-langu
          AND  b~ktopl  EQ 'CAPI'.
    *SI NO ENCUENTRA DATA EN LA TABLA FAGLFLEXT ENVIA EL MENSAJE DE ERROR
    *A LA TABLA DE ERROR.
      IF sy-subrc <> 0.
        MOVE 'No data found in FLAGLFLEXT or ZAVG_BAL_TABLE for this process.'(e01) TO emsg.
    *    PERFORM call_error_function USING emsg.
    *    PERFORM call_log_function_send.
        MESSAGE: emsg TYPE 'E'.
      ENDIF.
    *EN ESTE SELECT SACO LA DESCRIPCION DE LA CUENTA
      SORT t_itab1 BY racct ASCENDING.
      DELETE t_itab1 WHERE racct = ''.
      SORT t_itab1 BY prctr ASCENDING.
      CLEAR t_itab1.
      READ TABLE t_itab1 INTO wa_low  INDEX 1 .
      DESCRIBE TABLE t_itab1 LINES firstline.
      READ TABLE t_itab1 INTO wa_high INDEX firstline.
      IF wa_high-prctr = 'DUMMY'.                      "SI EL ULTIMO RECORD CONTIENE ALGUN 'DUMMY' ESCOJER EL RECORD DE ARRIBA.
        firstline = firstline - 1.                     "CONTIENE EL NUMERO DEL INDICE.
        READ TABLE t_itab1 INTO wa_high INDEX firstline.
      ENDIF.
      profit-sign    = 'I'.
      profit-option  = 'BT'.
      profit-low     = wa_low-prctr.
      profit-high    = wa_high-prctr.
      APPEND profit.
    *COMPUTOS PARA CALCULAR EL ULTIMO DIA DEL MES.
      fecha       = p_date.
      numero_mes = p_date+4(2).                       "PASO NUMERO DEL MES A VARIABLE.
      p_date+4(2) = p_date+4(2) - numero_mes.         "LE RESTO EL MISMO MES A LA FECHA PARA COMENZAR EL CONTEO DESDE EL MES 1.
      DO numero_mes TIMES.                           "SE VA A EJECUTAR LAS MISMAS VECES DEL NUMERO DEL MES.
        p_date+4(2) = p_date+4(2) + 1.                  "SE INCREMENTA EL NUMERO DEL MES.
        CALL FUNCTION 'SG_PS_GET_LAST_DAY_OF_MONTH'    "Obtiene el ultimo numero del mes.
          EXPORTING
            day_in            = p_date
          IMPORTING
            last_day_of_month = last_day
          EXCEPTIONS
            day_in_not_valid  = 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.
        IF fecha = p_date.
          fecha = fecha - 1.   "le resta a fecha -1 para que busque en la tabla zavg_bal_table el record del dia anterior.
          end_month-sign    = 'I'.
          end_month-option  = 'EQ'.
          end_month-low     = fecha.
          APPEND end_month.
        ELSE.
          end_month-sign    = 'I'.
          end_month-option  = 'EQ'.
          end_month-low     = last_day.
          APPEND end_month.
        ENDIF.
      ENDDO.
      SORT end_month BY low ASCENDING.
      SELECT bukrs racct prctr day_a per_day average agregate accumulate average_sap
        FROM zavg_bal_table CLIENT SPECIFIED APPENDING TABLE t_zavg
        WHERE mandt = sy-mandt
          AND bukrs IN p_bukrs
          AND  day_a <= sy-datum
          AND  prctr IN profit.
      SORT t_itab1 BY rbukrs racct prctr.
      SORT t_zavg  BY  bukrs racct prctr day_a.
    *IMPRESION Y ENVIO DE LOS DATOS REQUERIDOS
    *Estos If verifican el mes que se esta ejecutando por el usuario para cambiarselo a la variable que identifica el fin de mes.
      IF p_date+4(2) = jan_fin+4(2).
        jan_fin+6(2) = p_date+6(2).
      ENDIF.
      IF p_date+4(2) = feb_fin+4(2).
        feb_fin+6(2) = p_date+6(2).
      ENDIF.
      IF p_date+4(2) = mar_fin+4(2).
        mar_fin+6(2) = p_date+6(2).
      ENDIF.
      IF p_date+4(2) = apr_fin+4(2).
        apr_fin+6(2) = p_date+6(2).
      ENDIF.
      IF p_date+4(2) = may_fin+4(2).
        may_fin+6(2) = p_date+6(2).
      ENDIF.
      IF p_date+4(2) = jun_fin+4(2).
        jun_fin+6(2) = p_date+6(2).
      ENDIF.
      IF p_date+4(2) = jul_fin+4(2).
        jul_fin+6(2) = p_date+6(2).
      ENDIF.
      IF p_date+4(2) = aug_fin+4(2).
        aug_fin+6(2) = p_date+6(2).
      ENDIF.
      IF p_date+4(2) = sep_fin+4(2).
        sep_fin+6(2) = p_date+6(2).
      ENDIF.
      IF p_date+4(2) = oct_fin+4(2).
        oct_fin+6(2) = p_date+6(2).
      ENDIF.
      IF p_date+4(2) = nov_fin+4(2).
        nov_fin+6(2) = p_date+6(2).
      ENDIF.
      IF p_date+4(2) = dec_fin+4(2).
        dec_fin+6(2) = p_date+6(2).
      ENDIF.
    *Comienza primer loop en el programa a t_itab1 que es la tabla interna que contiene los datos de faglflext.
      LOOP AT t_itab1 INTO wa_itab WHERE racct  NE ''.
        AT NEW prctr.  "Limpia las variables que se muestran en el clear cada ves que comienza un nuevo profit center.
          CLEAR: itab_kslvt, itab_ksl01, itab_ksl02, itab_ksl03, itab_ksl04, itab_ksl05, itab_ksl06, itab_ksl07, itab_ksl08,
                 itab_ksl09, itab_ksl10, itab_ksl11, itab_ksl12, itab_ksl13, itab_ksl14, itab_ksl15, itab_ksl16,
                 itab_bal00, itab_bal01, itab_bal02, itab_bal03, itab_bal04, itab_bal05, itab_bal06, itab_bal07,
                 itab_bal08, itab_bal09, itab_bal10, itab_bal11, itab_bal12, itab_bal13, itab_bal14, itab_bal15,
                 itab_bal16.
        ENDAT.
    *Se le pasa a la variable itab_ksl## el valor del mes que contenga flext.
        itab_kslvt = itab_kslvt + wa_itab-kslvt. itab_ksl01 = itab_ksl01 + wa_itab-ksl01. itab_ksl02 = itab_ksl02 + wa_itab-ksl02.
        itab_ksl03 = itab_ksl03 + wa_itab-ksl03. itab_ksl04 = itab_ksl04 + wa_itab-ksl04.
        itab_ksl05 = itab_ksl05 + wa_itab-ksl05. itab_ksl06 = itab_ksl06 + wa_itab-ksl06.
        itab_ksl07 = itab_ksl07 + wa_itab-ksl07. itab_ksl08 = itab_ksl08 + wa_itab-ksl08.
        itab_ksl09 = itab_ksl09 + wa_itab-ksl09. itab_ksl10 = itab_ksl10 + wa_itab-ksl10.
        itab_ksl11 = itab_ksl11 + wa_itab-ksl11. itab_ksl12 = itab_ksl12 + wa_itab-ksl12.
        itab_ksl13 = itab_ksl13 + wa_itab-ksl13. itab_ksl14 = itab_ksl14 + wa_itab-ksl14.
        itab_ksl15 = itab_ksl15 + wa_itab-ksl15. itab_ksl16 = itab_ksl16 + wa_itab-ksl16.
    *En estas variables va acumulando el valor por mes. Osea, va sumando todo lo que tenga de ese mes por profit center. Al venir un profit
    *nuevo esta se limpia.
        itab_bal00 = itab_bal00 + wa_itab-kslvt. itab_bal01 = itab_bal01 + wa_itab-ksl01. itab_bal02 = itab_bal02 + wa_itab-ksl02.
        itab_bal03 = itab_bal03 + wa_itab-ksl03. itab_bal04 = itab_bal04 + wa_itab-ksl04.
        itab_bal05 = itab_bal05 + wa_itab-ksl05. itab_bal06 = itab_bal06 + wa_itab-ksl06.
        itab_bal07 = itab_bal07 + wa_itab-ksl07. itab_bal08 = itab_bal08 + wa_itab-ksl08.
        itab_bal09 = itab_bal09 + wa_itab-ksl09. itab_bal10 = itab_bal10 + wa_itab-ksl10.
        itab_bal11 = itab_bal11 + wa_itab-ksl11. itab_bal12 = itab_bal12 + wa_itab-ksl12.
        itab_bal13 = itab_bal13 + wa_itab-ksl13. itab_bal14 = itab_bal14 + wa_itab-ksl14.
        itab_bal15 = itab_bal15 + wa_itab-ksl15. itab_bal16 = itab_bal16 + wa_itab-ksl16.
        ryear = wa_itab-ryear.
        CLEAR t_zavg.
        sy-subrc = 0.
        numero_de_cta   = wa_itab-racct.
        company_code    = wa_itab-rbukrs.
        profit_center   = wa_itab-prctr.
        currency_code   = wa_itab-rtcur.
        descripcion     = wa_itab-txt20.
    *Segundo loop a realizarce. Este utiliza la tabla interna: t_zavg la cual contiene los datos extraidos de zavg_bal_table.
        LOOP AT t_zavg INTO wa_zavg WHERE bukrs = wa_itab-rbukrs AND racct = wa_itab-racct AND prctr = wa_itab-prctr.
          AT NEW prctr.  "Al cambiar el profit center limpia las variables que se encuentran en el clear.
            CLEAR: average_month_01, average_month_02, average_month_03, average_month_04, average_month_05,
             average_month_06, average_month_07, average_month_08, average_month_09, average_month_10, average_month_11,
             average_month_12, average_month.
          ENDAT.
    *Dependiendo del mes que contiene el record de la tabla t_zavg este va acumulando el average_month.
          IF wa_zavg-day_a+4(2) = '01'.
            average_month_01   = average_month_01 + wa_zavg-accumulate.
          ENDIF.
          IF wa_zavg-day_a+4(2) = '02'.
            average_month_02   = average_month_02 + wa_zavg-accumulate.
          ENDIF.
          IF wa_zavg-day_a+4(2) = '03'.
            average_month_03   = average_month_03 + wa_zavg-accumulate.
          ENDIF.
          IF wa_zavg-day_a+4(2) = '04'.
            average_month_04   = average_month_04 + wa_zavg-accumulate.
          ENDIF.
          IF wa_zavg-day_a+4(2) = '05'.
            average_month_05   = average_month_05 + wa_zavg-accumulate.
          ENDIF.
          IF wa_zavg-day_a+4(2) = '06'.
            average_month_06   = average_month_06 + wa_zavg-accumulate.
          ENDIF.
          IF wa_zavg-day_a+4(2) = '07'.
            average_month_07   = average_month_07 + wa_zavg-accumulate.
          ENDIF.
          IF wa_zavg-day_a+4(2) = '08'.
            average_month_08   = average_month_08 + wa_zavg-accumulate.
          ENDIF.
          IF wa_zavg-day_a+4(2) = '09'.
            average_month_09   = average_month_09 + wa_zavg-accumulate.
          ENDIF.
          IF wa_zavg-day_a+4(2) = '10'.
            average_month_10   = average_month_10 + wa_zavg-accumulate.
          ENDIF.
          IF wa_zavg-day_a+4(2) = '11'.
            average_month_11   = average_month_11 + wa_zavg-accumulate.
          ENDIF.
          IF wa_zavg-day_a+4(2) = '12'.
            average_month_12   = average_month_12 + wa_zavg-accumulate.
          ENDIF.
    *Este if verifica que cuando el record que se esta verificando sea con fecha de fin de mes calcule el resto del codigo que se encuentra debajo.
          IF wa_zavg-day_a = jan_fin OR wa_zavg-day_a = feb_fin OR wa_zavg-day_a = mar_fin OR wa_zavg-day_a = apr_fin OR wa_zavg-day_a = may_fin OR wa_zavg-day_a = jun_fin OR
          wa_zavg-day_a = jul_fin OR wa_zavg-day_a = aug_fin OR wa_zavg-day_a = sep_fin OR wa_zavg-day_a = oct_fin OR
          wa_zavg-day_a = nov_fin OR wa_zavg-day_a = dec_fin.
            aggregate_month =  wa_zavg-agregate.
            day_a  = wa_zavg-day_a.
    *Calcula el aggregate_month dependiendo de la fecha del record que se esta procesando.
            IF wa_zavg-day_a+4(2) = '01'.
              aggregate_month_01 =  wa_zavg-agregate.
            ENDIF.
            IF wa_zavg-day_a+4(2) = '02'.
              aggregate_month_02 =  wa_zavg-agregate.
            ENDIF.
            IF wa_zavg-day_a+4(2) = '03'.
              aggregate_month_03 = wa_zavg-agregate.
            ENDIF.
            IF wa_zavg-day_a+4(2) = '04'.
              aggregate_month_04 =  wa_zavg-agregate.
            ENDIF.
            IF wa_zavg-day_a+4(2) = '05'.
              aggregate_month_05 =  wa_zavg-agregate.
            ENDIF.
            IF wa_zavg-day_a+4(2) = '06'.
              aggregate_month_06 =  wa_zavg-agregate.
            ENDIF.
            IF wa_zavg-day_a+4(2) = '07'.
              aggregate_month_07 =  wa_zavg-agregate.
            ENDIF.
            IF wa_zavg-day_a+4(2) = '08'.
              aggregate_month_08 =  wa_zavg-agregate.
            ENDIF.
            IF wa_zavg-day_a+4(2) = '09'.
              aggregate_month_09 =  wa_zavg-agregate.
            ENDIF.
            IF wa_zavg-day_a+4(2) = '10'.
              aggregate_month_10 =  wa_zavg-agregate.
            ENDIF.
            IF wa_zavg-day_a+4(2) = '11'.
              aggregate_month_11 =  wa_zavg-agregate.
            ENDIF.
            IF wa_zavg-day_a+4(2) = '12'.
              aggregate_month_12 =  wa_zavg-agregate.
            ENDIF.
          ENDIF.
    *Este if verifica que cuando el record que se esta verificando sea con fecha de fin de mes calcule el resto del codigo que se encuentra debajo.
          IF wa_zavg-day_a+4(4) = jan_fin+4(4) OR wa_zavg-day_a+4(4) = feb_fin+4(4) OR wa_zavg-day_a+4(4) = febb_fin+4(4) OR wa_zavg-day_a+4(4) = mar_fin+4(4) OR
             wa_zavg-day_a+4(4) = apr_fin+4(4) OR wa_zavg-day_a+4(4) = may_fin+4(4) OR wa_zavg-day_a+4(4) = jun_fin+4(4) OR wa_zavg-day_a+4(4) = jul_fin+4(4) OR
             wa_zavg-day_a+4(4) = aug_fin+4(4) OR wa_zavg-day_a+4(4) = sep_fin+4(4) OR wa_zavg-day_a+4(4) = oct_fin+4(4) OR wa_zavg-day_a+4(4) = nov_fin+4(4) OR
             wa_zavg-day_a+4(4) = dec_fin+4(4).
    *Calcula la division entre la cantidad acumulada por mes y la fecha del fin de mes.
            IF average_month_01 IS NOT INITIAL.
              porciento1 = average_month_01 / jan_fin+6(2).
              average_month   = porciento1.
            ENDIF.
            IF average_month_02 IS NOT INITIAL.
              porciento2 = average_month_02 / feb_fin+6(2).
              average_month   = porciento2.
            ENDIF.
            IF average_month_03 IS NOT INITIAL.
              porciento3 = average_month_03 / mar_fin+6(2).
              average_month   = porciento3.
            ENDIF.
            IF average_month_04 IS NOT INITIAL.
              porciento4 = average_month_04 / apr_fin+6(2).
              average_month   = porciento4.
            ENDIF.
            IF average_month_05 IS NOT INITIAL.
              porciento5 = average_month_05 / may_fin+6(2).
              average_month   = porciento5.
            ENDIF.
            IF average_month_06 IS NOT INITIAL.
              porciento6 = average_month_06 / jun_fin+6(2).
              average_month   = porciento6.
            ENDIF.
            IF average_month_07 IS NOT INITIAL.
              porciento7 = average_month_07 / jul_fin+6(2).
              average_month   = porciento7.
            ENDIF.
            IF average_month_08 IS NOT INITIAL.
              porciento8 = average_month_08 / aug_fin+6(2).
              average_month   = porciento8.
            ENDIF.
            IF average_month_09 IS NOT INITIAL.
              porciento9 = average_month_09 / sep_fin+6(2).
              average_month   = porciento9.
            ENDIF.
            IF average_month_10 IS NOT INITIAL.
              porciento10 = average_month_10 / oct_fin+6(2).
              average_month   = porciento10.
            ENDIF.
            IF average_month_11 IS NOT INITIAL.
              porciento11 = average_month_11 / nov_fin+6(2).
              average_month   = porciento11.
            ENDIF.
            IF average_month_12 IS NOT INITIAL.
              porciento12 = average_month_12 / dec_fin+6(2).
              average_month   = porciento12.
            ENDIF.
    *Cuando la fecha que esta entrando el usuario es la misma a la del record que se esta procesando en ese momento ejecuta el siguiente IF.
            IF p_date+4(4) = wa_zavg-day_a+4(4).
              current_average_balance   =  average_month.
              current_aggregate_balance =  aggregate_month.
              average_balance_ytd       =  average_month.
            ENDIF.
          ENDIF.
        ENDLOOP.
        AT END OF prctr.
          IF sy-subrc = 0.
    *ESTAS VARIABLES SE ESTAN PASANDO A UNA VARIABLE NORMAL YA QUE SI SE DEJAN DENTRO DEL WORK AREA (WA) LE PONE ASTERISCOS.
    *LOS IF QUE SE DEMUESTRAN ABAJO SON PARECIDOS A LOS UTILIZADOS EN LA   *
    *PARTE POSTERIOR LO UNICO QUE LA FECHA UTILIZADA NO ES EXTRAIDA DE LA  *
    *TABLA, ES LA QUE EL USUARIO INSERTA DENTRO DEL PARAMETRO.             *
            IF p_date+4(2) >= '01'.
              COMPUTE: balance_month_01 =   itab_bal00 + itab_bal01.
            ENDIF.
            IF p_date+4(2) >= '02'.
              COMPUTE: balance_month_02 = itab_bal00 + itab_bal01 + itab_bal02.
            ENDIF.
            IF p_date+4(2) >= '03'.
              COMPUTE: balance_month_03 = itab_bal00 + itab_bal01 + itab_bal02 + itab_bal03.
            ENDIF.
            IF p_date+4(2) >= '04'.
              COMPUTE: balance_month_04 = itab_bal00 + itab_bal01 + itab_bal02 + itab_bal03 + itab_bal04.
            ENDIF.
            IF p_date+4(2) >= '05'.
              COMPUTE: balance_month_05 = itab_bal00 + itab_bal01 + itab_bal02 + itab_bal03 + itab_bal04 + itab_bal05.
            ENDIF.
            IF p_date+4(2) >= '06'.
              COMPUTE: balance_month_06 =  itab_bal00 + itab_bal01 + itab_bal02 + itab_bal03 + itab_bal04 + itab_bal05 + itab_bal06.
            ENDIF.
            IF p_date+4(2) >= '07'.
              COMPUTE: balance_month_07 =  itab_bal00 + itab_bal01 + itab_bal02 + itab_bal03 + itab_bal04 + itab_bal05 + itab_bal06 + itab_bal07.
            ENDIF.
            IF p_date+4(2) >= '08'.
              COMPUTE: balance_month_08 =  itab_bal00 + itab_bal01 + itab_bal02 + itab_bal03 + itab_bal04 + itab_bal05 + itab_bal06 + itab_bal07 + itab_bal08.
            ENDIF.
            IF p_date+4(2) >= '09'.
              COMPUTE: balance_month_09 =  itab_bal00 + itab_bal01 + itab_bal02 + itab_bal03 + itab_bal04 + itab_bal05 + itab_bal06 + itab_bal07 + itab_bal08 + itab_bal09.
            ENDIF.
            IF p_date+4(2) >= '10'.
              COMPUTE: balance_month_10 =  itab_bal00 + itab_bal01 + itab_bal02 + itab_bal03 + itab_bal04 + itab_bal05 + itab_bal06 + itab_bal07 + itab_bal08 + itab_bal09 + itab_bal10.
            ENDIF.
            IF p_date+4(2) >= '11'.
              COMPUTE: balance_month_11 = itab_bal00 + itab_bal01 + itab_bal02 + itab_bal03 + itab_bal04 + itab_bal05 + itab_bal06 + itab_bal07 + itab_bal08 + itab_bal09 + itab_bal10 + itab_bal11.
            ENDIF.
            IF p_date+4(2) >= '12'.
              COMPUTE: balance_month_12 =  itab_bal00 + itab_bal01 + itab_bal02 + itab_bal03 + itab_bal04 + itab_bal05 + itab_bal06 + itab_bal07 + itab_bal08 + itab_bal09 + itab_bal10 + itab_bal11 + itab_bal12.
            ENDIF.
            IF p_date+4(2) >= '13'.
              COMPUTE: balance_month_13 = itab_bal00 + itab_bal01 + itab_bal02 + itab_bal03 + itab_bal04 + itab_bal05 + itab_bal06 + itab_bal07 + itab_bal08 + itab_bal09 + itab_bal10 + itab_bal11 + itab_bal12 + itab_bal13.
            ENDIF.
          COMPUTE: current_balance =  + itab_bal00 + itab_bal01 + itab_bal02 + itab_bal03 + itab_bal04 + itab_bal05 + itab_bal06 + itab_bal07 + itab_bal08 + itab_bal09 + itab_bal10 + itab_bal11 + itab_bal12 + itab_bal13 + itab_bal14 + itab_bal15 + itab_bal16.
    *Computo para el activity balance.
            IF p_date+4(2) = '01'.
              current_activity_balance =   itab_ksl01.
            ENDIF.
            IF p_date+4(2) = '02'.
              current_activity_balance =   itab_ksl02.
            ENDIF.
            IF p_date+4(2) = '03'.
              current_activity_balance =   itab_ksl03.
            ENDIF.
            IF p_date+4(2) = '04'.
              current_activity_balance =   itab_ksl04.
            ENDIF.
            IF p_date+4(2) = '05'.
              current_activity_balance =   itab_ksl05.
            ENDIF.
            IF p_date+4(2) = '06'.
              current_activity_balance =   itab_ksl06.
            ENDIF.
            IF p_date+4(2) = '07'.
              current_activity_balance =   itab_ksl07.
            ENDIF.
            IF p_date+4(2) = '08'.
              current_activity_balance =   itab_ksl08.
            ENDIF.
            IF p_date+4(2) = '09'.
              current_activity_balance =   itab_ksl09.
            ENDIF.
            IF p_date+4(2) = '10'.
              current_activity_balance =   itab_ksl10.
            ENDIF.
            IF p_date+4(2) = '11'.
              current_activity_balance =   itab_ksl11.
            ENDIF.
            IF p_date+4(2) = '12'.
              current_activity_balance =   itab_ksl12.
            ENDIF.
    *LE RESTA 1 AL AÑO CORRIENTE PARA VERIFICAR LUEGO SI EXISTE INFORMACION*
    *DE AÑOS ANTERIORES.                                                   *
            ano = ryear - 1.
    *               Get the values of the past year.                    *
            ano =  p_date+0(4) - 1.
            IF ryear = ano.
              wa_msgdetails-activity_previous_year = itab_ksl12.
    *     balance_previous_year = wa_msgdetails-balance_previous_year.  *
              wa_msgdetails-average_previous_year  = average_month_12.
              wa_msgdetails-aggreg_previous_year   = aggregate_month_12.
            ELSE.
    *If the table don't have data the variables get '0000000000000'.    *
              wa_msgdetails-activity_previous_year          = '00000000000000.00'.
              wa_msgdetails-average_previous_year           = '00000000000000.00'.
              wa_msgdetails-aggreg_previous_year            = '00000000000000.00'.
              AT LAST.
                wa_msgdetails-balance_previous_year           = '00000000000000.00'.
                wa_msgdetails-balance_previous_year           = itab_kslvt +
                                                                itab_ksl01 +
                                                                itab_ksl02 +
                                                                itab_ksl03 +
                                                                itab_ksl04 +
                                                                itab_ksl05 +
                                                                itab_ksl06 +
                                                                itab_ksl07 +
                                                                itab_ksl08 +
                                                                itab_ksl09 +
                                                                itab_ksl10 +
                                                                itab_ksl11 +
                                                                itab_ksl12.
              ENDAT.
            ENDIF.
            wa_msgdetails-account             = numero_de_cta.
            wa_msgdetails-company             = company_code.
            wa_msgdetails-cost_center         = profit_center.
            wa_msgdetails-currency_code       = currency_code.
            wa_msgdetails-account_description = descripcion.
            wa_msgdetails-activity_month_01   = itab_ksl01.
            wa_msgdetails-average_month_01    = porciento1.
            wa_msgdetails-aggreg_month_01     = aggregate_month_01.
            wa_msgdetails-activity_month_02   = itab_ksl02.
            wa_msgdetails-average_month_02    = porciento2.
            wa_msgdetails-aggreg_month_02     = aggregate_month_02.
            wa_msgdetails-activity_month_03   = itab_ksl03.
            wa_msgdetails-average_month_03    = porciento3.
            wa_msgdetails-aggreg_month_03     = aggregate_month_03.
            wa_msgdetails-activity_month_04   = itab_ksl04.
            wa_msgdetails-average_month_04    = porciento4.
            wa_msgdetails-aggreg_month_04     = aggregate_month_04.
            wa_msgdetails-activity_month_05   = itab_ksl05.
            wa_msgdetails-average_month_05    = porciento5.
            wa_msgdetails-aggreg_month_05     = aggregate_month_05.
            wa_msgdetails-activity_month_06   = itab_ksl06.
            wa_msgdetails-average_month_06    = porciento6.
            wa_msgdetails-aggreg_month_06     = aggregate_month_06.
            wa_msgdetails-activity_month_07   = itab_ksl07.
            wa_msgdetails-average_month_07    = porciento7.
            wa_msgdetails-aggreg_month_07     = aggregate_month_07.
            wa_msgdetails-activity_month_08   = itab_ksl08.
            wa_msgdetails-average_month_08    = porciento8.
            wa_msgdetails-aggreg_month_08     = aggregate_month_08.
            wa_msgdetails-activity_month_09   = itab_ksl09.
            wa_msgdetails-average_month_09    = porciento9.
            wa_msgdetails-aggreg_month_09     = aggregate_month_09.
            wa_msgdetails-activity_month_10   = itab_ksl10.
            wa_msgdetails-average_month_10    = porciento10.
            wa_msgdetails-aggreg_month_10     = aggregate_month_10.
            wa_msgdetails-activity_month_11   = itab_ksl11.
            wa_msgdetails-average_month_11    = porciento11.
            wa_msgdetails-aggreg_month_11     = aggregate_month_11.
            wa_msgdetails-activity_month_12   = itab_ksl12.
            wa_msgdetails-average_month_12    = porciento12.
            wa_msgdetails-aggreg_month_12     = aggregate_month_12.
            wa_msgdetails-activity_month_13   = itab_ksl13.
            wa_msgdetails-average_month_13    = '00000000000000.00'.
            wa_msgdetails-aggreg_month_13     = '00000000000000.00'.
            wa_msgdetails-balance_month_01          = balance_month_01.
            wa_msgdetails-balance_month_02          = balance_month_02.
            wa_msgdetails-balance_month_03          = balance_month_03.
            wa_msgdetails-balance_month_04          = balance_month_04.
            wa_msgdetails-balance_month_05          = balance_month_05.
            wa_msgdetails-balance_month_06          = balance_month_06.
            wa_msgdetails-balance_month_07          = balance_month_07.
            wa_msgdetails-balance_month_08          = balance_month_08.
            wa_msgdetails-balance_month_09          = balance_month_09.
            wa_msgdetails-balance_month_10          = balance_month_10.
            wa_msgdetails-balance_month_11          = balance_month_11.
            wa_msgdetails-balance_month_12          = balance_month_12.
            wa_msgdetails-balance_month_13          = balance_month_13.
            wa_msgdetails-current_balance           = current_balance.
            wa_msgdetails-current_activity_balance  = current_activity_balance.
            CLEAR: porciento1, porciento2, porciento3, porciento4, porciento5, porciento6, porciento7, porciento8, porciento9, porciento10, porciento11,
                   porciento12, average_month.
    *se multiplican las siguientes variables que contienen cantidades por -1 cuando el primer numero de la cta. es igual a
    * 5, 6, 7, ó 8.
            IF numero_de_cta+4(1) = '5' OR numero_de_cta+4(1) = '6' OR numero_de_cta+4(1) = '7' OR numero_de_cta+4(1) = '8'.
              IF wa_msgdetails-current_balance IS NOT INITIAL.
                wa_msgdetails-current_balance = wa_msgdetails-current_balance * -1.
              ENDIF.
              IF wa_msgdetails-activity_previous_year IS NOT INITIAL.
                wa_msgdetails-activity_previous_year = wa_msgdetails-activity_previous_year * -1.
              ENDIF.
              IF wa_msgdetails-average_previous_year IS NOT INITIAL.
                wa_msgdetails-average_previous_year = wa_msgdetails-average_previous_year * -1.
              ENDIF.
              IF wa_msgdetails-aggreg_previous_year IS NOT INITIAL.
                wa_msgdetails-aggreg_previous_year = wa_msgdetails-aggreg_previous_year * -1.
              ENDIF.
              IF wa_msgdetails-balance_previous_year IS NOT INITIAL.
                wa_msgdetails-balance_previous_year = wa_msgdetails-balance_previous_year * -1.
              ENDIF.
              IF wa_msgdetails-current_activity_balance IS NOT INITIAL.
                wa_msgdetails-current_activity_balance = wa_msgdetails-current_activity_balance * -1.
              ENDIF.
              IF wa_msgdetails-activity_month_01 IS NOT INITIAL.
                wa_msgdetails-activity_month_01 = wa_msgdetails-activity_month_01 * -1.
              ENDIF.
              IF wa_msgdetails-balance_month_01 IS NOT INITIAL.
                wa_msgdetails-balance_month_01 = wa_msgdetails-balance_month_01 * -1.
              ENDIF.
              IF wa_msgdetails-average_month_01 IS NOT INITIAL.
                wa_msgdetails-average_month_01 = wa_msgdetails-average_month_01 * -1.
              ENDIF.
              IF wa_msgdetails-aggreg_month_01 IS NOT INITIAL.
                wa_msgdetails-aggreg_month_01 = wa_msgdetails-aggreg_month_01 * -1.
              ENDIF.
              IF wa_msgdetails-activity_month_02 IS NOT INITIAL.
                wa_msgdetails-activity_month_02 = wa_msgdetails-activity_month_02 * -1.
              ENDIF.
              IF wa_msgdetails-balance_month_02 IS NOT INITIAL.
                wa_msgdetails-balance_month_02 = wa_msgdetails-balance_month_02 * -1.
              ENDIF.
              IF wa_msgdetails-average_month_02 IS NOT INITIAL.
                wa_msgdetails-average_month_02 = wa_msgdetails-average_month_02 * -1.
              ENDIF.
              IF wa_msgdetails-aggreg_month_02 IS NOT INITIAL.
                wa_msgdetails-aggreg_month_02 = wa_msgdetails-aggreg_month_02 * -1.
              ENDIF.
              IF wa_msgdetails-activity_month_03 IS NOT INITIAL.
                wa_msgdetails-activity_month_03 = wa_msgdetails-activity_month_03 * -1.
              ENDIF.
              IF wa_msgdetails-balance_month_03 IS NOT INITIAL.
                wa_msgdetails-balance_month_03 = wa_msgdetails-balance_month_03 * -1.
              ENDIF.
              IF wa_msgdetails-average_month_03 IS NOT INITIAL.
                wa_msgdetails-average_month_03 = wa_msgdetails-average_month_03 * -1.
              ENDIF.
              IF wa_msgdetails-aggreg_month_03 IS NOT INITIAL.
                wa_msgdetails-aggreg_month_03 = wa_msgdetails-aggreg_month_03 * -1.
              ENDIF.
              IF wa_msgdetails-activity_month_04 IS NOT INITIAL.
                wa_msgdetails-activity_month_04 = wa_msgdetails-activity_month_04 * -1.
              ENDIF.
              IF wa_msgdetails-balance_month_04 IS NOT INITIAL.
                wa_msgdetails-balance_month_04 = wa_msgdetails-balance_month_04 * -1.
              ENDIF.
              IF wa_msgdetails-average_month_04 IS NOT INITIAL.
                wa_msgdetails-average_month_04 = wa_msgdetails-average_month_04 * -1.
              ENDIF.
              IF wa_msgdetails-aggreg_month_04 IS NOT INITIAL.
                wa_msgdetails-aggreg_month_04 = wa_msgdetails-aggreg_month_04 * -1.
              ENDIF.
              IF wa_msgdetails-activity_month_05 IS NOT INITIAL.
                wa_msgdetails-activity_month_05 = wa_msgdetails-activity_month_05 * -1.
              ENDIF.
              IF wa_msgdetails-balance_month_05 IS NOT INITIAL.
                wa_msgdetails-balance_month_05 = wa_msgdetails-balance_month_05 * -1.
              ENDIF.
              IF wa_msgdetails-average_month_05 IS NOT INITIAL.
                wa_msgdetails-average_month_05 = wa_msgdetails-average_month_05 * -1.
              ENDIF.
              IF wa_msgdetails-aggreg_month_05 IS NOT INITIAL.
                wa_msgdetails-aggreg_month_05 = wa_msgdetails-aggreg_month_05 * -1.
              ENDIF.
              IF wa_msgdetails-activity_month_06 IS NOT INITIAL.
                wa_msgdetails-activity_month_06 = wa_msgdetails-activity_month_06 * -1.
              ENDIF.
              IF wa_msgdetails-balance_month_06 IS NOT INITIAL.
                wa_msgdetails-balance_month_06 = wa_msgdetails-balance_month_06 * -1.
              ENDIF.
              IF wa_msgdetails-average_month_06 IS NOT INITIAL.
                wa_msgdetails-average_month_06 = wa_msgdetails-average_month_06 * -1.
              ENDIF.
              IF wa_msgdetails-aggreg_month_06 IS NOT INITIAL.
                wa_msgdetails-aggreg_month_06 = wa_msgdetails-aggreg_month_06 * -1.
              ENDIF.
              IF wa_msgdetails-activity_month_07 IS NOT INITIAL.
                wa_msgdetails-activity_month_07 = wa_msgdetails-activity_month_07 * -1.
              ENDIF.
              IF wa_msgdetails-balance_month_07 IS NOT INITIAL.
                wa_msgdetails-balance_month_07 = wa_msgdetails-balance_month_07 * -1.
              ENDIF.
              IF wa_msgdetails-average_month_07 IS NOT INITIAL.
                wa_msgdetails-average_month_07 = wa_msgdetails-average_month_07 * -1.
              ENDIF.
              IF wa_msgdetails-aggreg_month_07 IS NOT INITIAL.
                wa_msgdetails-aggreg_month_07 = wa_msgdetails-aggreg_month_07 * -1.
              ENDIF.
              IF wa_msgdetails-activity_month_08 IS NOT INITIAL.
                wa_msgdetails-activity_month_08 = wa_msgdetails-activity_month_08 * -1.
              ENDIF.
              IF wa_msgdetails-balance_month_08 IS NOT INITIAL.
                wa_msgdetails-balance_month_08 = wa_msgdetails-balance_month_08 * -1.
              ENDIF.
              IF wa_msgdetails-average_month_08 IS NOT INITIAL.
                wa_msgdetails-average_month_08 = wa_msgdetails-average_month_08 * -1.
              ENDIF.
              IF wa_msgdetails-aggreg_month_08 IS NOT INITIAL.
                wa_msgdetails-aggreg_month_08 = wa_msgdetails-aggreg_month_08 * -1.
              ENDIF.
              IF wa_msgdetails-activity_month_09 IS NOT INITIAL.
                wa_msgdetails-activity_month_09 = wa_msgdetails-activity_month_09 * -1.
              ENDIF.
              IF wa_msgdetails-balance_month_09 IS NOT INITIAL.
                wa_msgdetails-balance_month_09 = wa_msgdetails-balance_month_09 * -1.
              ENDIF.
              IF wa_msgdetails-average_month_09 IS NOT INITIAL.
                wa_msgdetails-average_month_09 = wa_msgdetails-average_month_09 * -1.
              ENDIF.
              IF wa_msgdetails-aggreg_month_09 IS NOT INITIAL.
                wa_msgdetails-aggreg_month_09 = wa_msgdetails-aggreg_month_09 * -1.
              ENDIF.
              IF wa_msgdetails-activity_month_10 IS NOT INITIAL.
                wa_msgdetails-activity_month_10 = wa_msgdetails-activity_month_10 * -1.
              ENDIF.
              IF wa_msgdetails-balance_month_10 IS NOT INITIAL.
                wa_msgdetails-balance_month_10 = wa_msgdetails-balance_month_10 * -1.
              ENDIF.
              IF wa_msgdetails-average_month_10 IS NOT INITIAL.
                wa_msgdetails-average_month_10 = wa_msgdetails-average_month_10 * -1.
              ENDIF.
              IF wa_msgdetails-aggreg_month_10 IS NOT INITIAL.
                wa_msgdetails-aggreg_month_10 = wa_msgdetails-aggreg_month_10 * -1.
              ENDIF.
              IF wa_msgdetails-activity_month_11 IS NOT INITIAL.
                wa_msgdetails-activity_month_11 = wa_msgdetails-activity_month_11 * -1.
              ENDIF.
              IF wa_msgdetails-balance_month_11 IS NOT INITIAL.
                wa_msgdetails-balance_month_11 = wa_msgdetails-balance_month_11 * -1.
              ENDIF.
              IF wa_msgdetails-average_month_11 IS NOT INITIAL.
                wa_msgdetails-average_month_11 = wa_msgdetails-average_month_11 *

    Hi,
    Are the month-ends (jan_fin etc) stored in the system? There are many variable declarations and if statements that could probably be eliminated if that is the case.  More efficient use of storing those variables in internal tables so that the data is only used when needed.
    Warren

  • Problem with Data Model and Analysis View

    I create an analyze in BI Publisher and then i create a data model using this object.
    When i try to generate an XML with a number of rows the BI Publisher return an empty XML (Only with de DATA_DS tags but no data).   To bypass this problem i make and XML file by hand and this allow me to create reports and design it but when i try to view the reports i got the message that says "No Data Found".
    So i was check the analysis and all looks appears to be fine,  In the results tab it show me a complete table with the data i was looking to use.
    So i try to repeat the error and when  i try to create the XML for the Data Model i found this two error in the logs:
    [root@server ~]# [2013-07-17T16:37:22.844-04:00] [bi_server1] [WARNING] [] [oracle.xdo] [tid: 2361] [userId: <anonymous>] [ecid: ad7bb40a72b553c0:-3e5f91c5:13ecd037992:-8000-00000000000e2b34,0] [APP: bipublisher#11.1.1] Incomplete xslt._XDONFSEPARATORS: decimal separator: null, grouping separator: null
    [2013-07-17T16:37:26.828-04:00] [bi_server1] [WARNING] [] [oracle.xdo] [tid: 2361] [userId: <anonymous>] [ecid: ad7bb40a72b553c0:-3e5f91c5:13ecd037992:-8000-00000000000e2b3a,0] [APP: bipublisher#11.1.1] Incomplete xslt._XDONFSEPARATORS: decimal separator: null, grouping separator: null
    [2013-07-17T16:37:26.865-04:00] [bi_server1] [WARNING] [] [oracle.xdo] [tid: 2361] [userId: <anonymous>] [ecid: ad7bb40a72b553c0:-3e5f91c5:13ecd037992:-8000-00000000000e2b3a,0] [APP: bipublisher#11.1.1] oracle.xdo.servlet.CreateException: Path: /FOLDER/MODEL.xdm is not pointing to a report. Actual type: ReportItem, sub-type: DataModel[[
            at oracle.xdo.servlet.ReportException.fillInStackTrace(ReportException.java:124)
            at java.lang.Throwable.<init>(Throwable.java:196)
            at java.lang.Exception.<init>(Exception.java:41)
            at oracle.xdo.servlet.ReportException.<init>(ReportException.java:36)
            at oracle.xdo.servlet.CreateException.<init>(CreateException.java:18)
            at oracle.xdo.servlet.ReportRepository.getReport(ReportRepository.java:104)
            at oracle.xdo.servlet.ReportRepository.getReport(ReportRepository.java:128)
            at oracle.xdo.servlet.dataengine.DataProcessorFactory.getDataModelPath(DataProcessorFactory.java:207)
            at oracle.xdo.servlet.dataengine.DataProcessorFactory.isSemanticLayerDataModel(DataProcessorFactory.java:99)
            at oracle.xdo.servlet.dataengine.DataProcessorFactory.isSemanticLayerDataModel(DataProcessorFactory.java:78)
            at oracle.xdo.servlet.ReportModelContextImpl.getReportXMLData(ReportModelContextImpl.java:157)
            at oracle.xdo.servlet.CoreProcessor.process(CoreProcessor.java:346)
            at oracle.xdo.servlet.CoreProcessor.generateDocument(CoreProcessor.java:101)
            at oracle.xdo.servlet.ReportImpl.renderBodyHTTP(ReportImpl.java:1074)
            at oracle.xdo.servlet.ReportImpl.renderReportBodyHTTP(ReportImpl.java:639)
            at oracle.xdo.servlet.XDOServlet.writeReport(XDOServlet.java:492)
            at oracle.xdo.servlet.XDOServlet.writeReport(XDOServlet.java:462)
            at oracle.xdo.servlet.XDOServlet.doGet(XDOServlet.java:280)
            at oracle.xdo.servlet.XDOServlet.doPost(XDOServlet.java:313)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
            at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
            at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
            at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
            at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
            at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
            at oracle.xdo.servlet.metadata.track.MostRecentFilter.doFilter(MostRecentFilter.java:64)
            at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
            at oracle.xdo.servlet.security.SecurityFilter.doFilter(SecurityFilter.java:125)
            at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
            at oracle.xdo.servlet.init.InitCheckingFilter.doFilter(InitCheckingFilter.java:63)
            at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
            at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119)
            at java.security.AccessController.doPrivileged(Native Method)
            at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315)
            at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442)
            at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103)
            at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171)
            at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
            at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
            at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:139)
            at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
            at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119)
            at java.security.AccessController.doPrivileged(Native Method)
            at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315)
            at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442)
            at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103)
            at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171)
            at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
            at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
            at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
            at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
            at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
            at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
            at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
            at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
            at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
            at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
            at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
            at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
            at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    And when i try to view the report that use the analysis i got this two warning in the logs:
    [2013-07-17T16:58:01.615-04:00] [bi_server1] [WARNING] [] [oracle.xdo] [tid: 57] [userId: <anonymous>] [ecid: ad7bb40a72b553c0:-3e5f91c5:13ecd037992:-8000-00000000000e2d7c,0] [APP: bipublisher#11.1.1] Incomplete xslt._XDONFSEPARATORS: decimal separator: null, grouping separator: null
    [2013-07-17T16:58:02.034-04:00] [bi_server1] [WARNING] [] [oracle.xdo] [tid: 57] [userId: <anonymous>] [ecid: ad7bb40a72b553c0:-3e5f91c5:13ecd037992:-8000-00000000000e2d84,0] [APP: bipublisher#11.1.1] Incomplete xslt._XDONFSEPARATORS: decimal separator: null, grouping separator: null
    As i understand there is has a reference to a null value but i cant find what column of the analysis has the problem.
    Any ideas about how to solve or debug this?
    Thanks

    I follow your instructions and it works fine. I can create the XML and the reports can show data.
    So, i already know that there is no problem with the data and with the BI Publisher installation but i still doesn know what is the problem with the analysis view that fails.
    Any idea how to debug it?
    Thanks.

  • Problem with downloading photos errer code 1

    problems with error code 1 when downloadind photos

    Not enough information to help you. That error code isn't from Firefox which uses 3 digit codes. What website is that? And. are you downloading '''''from''''' a website, or uploading '''''to''''' a website?

  • Problem with ATV refresh rates and frame rates

    I live in Australia and as such I am subject to PAL, so when I set my ATV up I set it to 720P 50Hz, when I purchased a TV season the episodes were running at 25fps and played back flawlessly with no dropped or added frames. My problem occurs when I download movies, all the movies I have bought are running at 24fps and suffer from quite noticeable jitter, almost like the 24th frame is duplicated and added as the 25th frame, I assume it is something like this as the pause happens every second.
    So has anyone had a problem similar to this and if so what do you do about it?
    Does the ATV playback all sources (24/25) smoothly even if it has to convert?
    Could it be caused by my TV?
    Any help to any of these questions would be great.
    Thanks.
    Tim.

    With my particular Apple TV setup and TV combination, I find that setting to 1080p (60hZ) gives my the best all-round round results.
    This does result in -slightly- jerky motion with 25fps material (especially old British TV shows), but it's bearable. It's particularly noticeable with sideways scrolling text and credits.
    The one thing that is peculiar on my setup is if I use 720p (either @60hz or 50hz) and watch an iTunes-purchased HD episode that is encoded at 24fps I get very odd motion effects indeed. Every few seconds the video appears to speed up almost like it is 'catching up' with lost frames - very hard to explain exactly how it looks. Anyway I set to 1080p and this effect is gone completely. It also goes away if I set to 1080i. I think something queer is going on with 720p on the Apple TV (at least with my TV there is). This happens with both HDMI and component outputs.
    It may be worth trying 1080i at either 50 or 60Hz if your set can't do 1080p.
    I would also suggest that 60hz in theory should give a smoother motion for 24fps playback than 50Hz.
    My basic problem with all this is that on even a cheap DVD player if a disk is 50Hz, the player switches to 50Hz output and if it is 60Hz, it will change to 60Hz. The Apple TV stays fixed. It's a shame it can't autoswitch refresh rates.

  • PNG Semi-Transparent background shows up with visual errors in code view in Dreamweaver CS5

    Hi,
    I am using an image as a visual divider between blocks of content for a template that I am making. The background is a PNG image with varying amounts of transparency. This background is set to be at the bottom of the div and creates a horizontal line. Everythign works out when the page is viewed in browser, and also in live-view inside dreamweaver. But once I view it in code view, the lines turn into jagged green distortions. I asked friends to run this in their dreamweaver and it is happening to them as well. Any help is appreciated. Thanks.

    I guess you're referring to 'Design View'.
    Design View is only more from a reference perspective - it doesn't render graphic elements the way it is supposed to, always.
    But, you did mention that it looks just fine in Live View, right?
    Btw, can you post the CSS rule you've applied to this DIV where you add the background image for the separator line?

  • SQL Developer 3 EA2 - Problem with formating plsql source code

    I'm using sql developer 3 ea2. I have played with source code formating.
    I have 2 issues with formating in source code editor.
    I have a plsql string like the following extending over several lines.
    s VARCHAR2(2000) := 'SELECT
    col1, col2, col3
    FROM table
    WHERE col4 = :var';The result after apply "format" to my sourcecode ist:
    s VARCHAR2(2000) := 'SELECT
    col1, col2, col3
    FROM table
    WHERE col4 = :var';The second is that sql developer ist camelizing the previous line if I type a whitespace in plsql sourcecode.
    How to switch that off??
    The last issue is realy annoying!
    Christian

    I am having exactly the same problem. Every time you use Format Ctrl/F7 it adds new line feeds. Code starts off as:
    command := '
    select account_status, default_tablespace, temporary_tablespace,
    to_char(created,"YYYY-MON-DD HH24:MI:SS"), profile
    from Dba_Users@@
    where username=:1' ;
    First Format Ctrl/F7 get an extra blank line:
    command := '
    select account_status, default_tablespace, temporary_tablespace,
    to_char(created,"YYYY-MON-DD HH24:MI:SS"), profile
    from Dba_Users@@
    where username=:1' ;
    Then second Format Ctrl/F7, get THREE extra lines!!! It goes exponential!!
    command := '
    select account_status, default_tablespace, temporary_tablespace,
    to_char(created,"YYYY-MON-DD HH24:MI:SS"), profile
    from Dba_Users@@
    where username=:1' ;
    So far I've only really encountered the problem with dynamic SQL, which ignores the extra line feeds.
    i am pretty sure this is a long standing SqlDeveloper Format problem, going back to V2.

  • Problem with Web Service Model code generation

    Hello,
    I'm importing two different web services into the same web dynpro component, which both contains properties "allGroup2" of type "All2".
    This causes some problems with the code generation, first of all the Model-classes can't be generated because they don't know which of the two All2-classes to use. If I fix that problem (which can be easily done by adding the correct import statement) I still can't use the models in my web dynpro component, since it too doesn't know which of the All2-classes to use.
    Even though I can fix this by adding imports and fixing the code, it of course gets regenerated next time I rebuild the project, and my changes are lost.
    Does anyone know how to solve this?

    Apparently this is a known bug which is fixed in SP15.
    Regards mattias

Maybe you are looking for