Joins in BODS

Hi All,
I am new to BODS. My requirement was to read a big flat file (size more than 180 GB) and join with small Database table.So I cannot do push down operation.
I tested the job with small test file and I can see that query transformer is doing the cross join even though I mentioned as inner join in query transformer. I have tested with many files and tables job always go for the cross join (according to the row count of the query transformer in the job log) and takes long time to finish
I am not sure why BODS behaves like this. Is there some configuration needed or it works this way?
Is there any better way of handling this requirement?
Regards,
Suman

1TB and 180GB is not exactly the same, is it?
Now, it all depends what your join is meant for.
1/. The join is for adding additional columns to your file data (lookup functionality). In that case, you'll need the storage anyway. Load your file into a table that already contains the extra columns. Then, in a 2nd dataflow, join the big table with the small one and update.
2/. The join is for filtering. Thyen check the settings for your input. The ones for the file should look like:
For the table:
The input with the highest join rank will be the driving one. Let us know how this works out.

Similar Messages

  • Join In BODS job

    Hi All,
    I am new to BODS tool. I am trying to read data from two databases (Hana and MS SQL Server)and do the inner join in Query transformation (From tab). These tables are huge in size and I don't need all the fields from Tables. So I am using SQL block to write custom selects for both tables with some where conditions . These select queries are working fine and takes less time to execute when I checked in the their respective consoles.
    But the BODS job is taking lot of time to execute this job. The log of query transformation shows that it is going for a Cartesian join and then doing filter of join condition. The row count keeps on growing as it is a Cartesian join and I have to kill the job.
    How Can I make this join to run faster . Is there any other option ?
    Regards,
    Suman.

    Hi Suman,
    I would suggest you to create a database link since you are using two different database servers and make sure that your DF is full pushdown. Inner join shall not take much time if it is full push down.
    You may refer this article on how to create a database link in sql server. URL
    Another article on performance optimization. URL
    Hope this would be helpful.
    Regards,
    MSA

  • Error while loading data from R/3 to BODS!

    Hi Experts,
    In BODS, we use R/3 customized table as source and using a query transformation, we are loading the data to a file. When we trigger a load for around 3 million records in a single shot, its throwing the dump as shown below.
    TSV_TNEW_PAGE_ALLOC_FAILED.
    you attempted to extend an internal table, but the required space was not available.
    ABAP Heap memory cannot be extended.
    But when we do the same load, with the same restrcition from R/3 to BW side till PSA, the data is getting loaded into the PSA. This is happening without any errors or short dump.
    The above mentioned load is a full load from R/3 to BODS as well as to BW.
    Can you please help us by stating the suggestions in order to overcome the issue which we are facing in BODS data load.
    Regards,
    vivek

    Yes, it seems like when you try to read a table w/ an ABAP dataflow, R/3 needs to read the whole table into memory, and, for large enough tables, can run out.
    You can work around this, I think, in two ways: vertical or horizontal partitioning. Vertical: break the table apart by small sets of columns (always including the PK), staging each, and then joining them back together after you get them out of ECC. Horizontal: push-down some filtering operation, all the way into the ABAP dataflow, to chop the source table up into small, non-overlapping hunks-of-records, stage those out, and then UNION them back together.
    Best wishes,
    Jeff Prenevost
    Data Services Practice Manager
    itelligence

  • 'Join' two different field types together into a String - possible in Java?

    Not entirely certain whether this is a straightforward Java or more of a JDBC question:
    I have two fields, one is a String and one an integer. I need to concatenate these fields together to form one String, prior to performing an insert on a table. ie:
    String s = dbRS.getString("partition_name");    //get full string
    String partstr = s.substring(0, 14);      // get first 14 (alpha) characters
    int new_partition_number = max_partition_number + 1;      //create new unique partition number, incremented by 1Now I have
    - a String (partstr - i.e. "TN1234567890_")
    - an integer (i.e. 50)
    (NB. The number has to be an integer because it is subject to calculation elsewhere.)
    I wish to join these together into a String ("TN1234567890_50") and use the field in an inserted row. I've tried using
    String partition_string = new StringBuffer(partstr).append(new_partition_number ).toString();... but this doesn't work.
    I read on a forum that it's impossible to cast an integer to a String in this way in Java, which sounds pretty incredulous from where I am! However my Osborne Java 2 Complete Reference doesn't mention it at all.
    Any assistance will be very gratefully received!
    Thanks.

    wonder why he thinks you can't append an int to a StringBuilder.
    Works fine. Might of course not yield the expected result depending on expectations, but it works just fine.
    But then, the coding conventions reminiscent of C don't bode well.

  • Data Services (BODI) password file synchronization by external application

    Hello,
    Question: Is there any batch/shell process that update the BODS password file?
    Issue: An external system (P-Synch) change the developper repository passwords every 60 days. The passwords have to be changed manually on the BODS server or account get locked.
    Objective: Automation of BODI password syncrhonization (reset) on the server.
    My dream: application_cmd -Repsoitory -Account -Password 
    Thank you,

    There's not a good option for that.
    In the past, there was ABC Amber IPD converter which could extract or convert data from backup files to CSV or text files, but ABC is no longer available and I don't know of another IPD file extractor.
    I don't know of another option. Let's see if someone else might.
    1. If any post helps you please click the below the post(s) that helped you.
    2. Please resolve your thread by marking the post "Solution?" which solved it for you!
    3. Install free BlackBerry Protect today for backups of contacts and data.
    4. Guide to Unlocking your BlackBerry & Unlock Codes
    Join our BBM Channels (Beta)
    BlackBerry Support Forums Channel
    PIN: C0001B7B4   Display/Scan Bar Code
    Knowledge Base Updates
    PIN: C0005A9AA   Display/Scan Bar Code

  • Need help in doing BODS Certification

    Hi All,
    I am a beginner in BODS having 6 months experience. Now I am looking forward for BODS Certification,Can you pleae guide me in which course to take up and procedure for getting certified....

    Hi Harish,
    The documents are not available as a free download. You must join the SAP education to obtain the training & material.
    Kind regards,
    Sundar

  • Pass BODS job parameters as HAVA View parameters

    Hi experts,
    I use HANA Calculation View as Data Source and need to pass BODS job's parameters into Calculation View parameters. I have tried to use SQL Transformation with code like this (see below) but it doesn't work.
    select RRCTY, RYEAR, FISCAL_PERIOD as POPER, FISCAL_YEAR_PERIOD, RBUKRS, RACCT, RCNTR, WBS, RZZPERNR, PLEVEL, ROW, MEASURE, REP_ID
         from SOURCE_1.DIM_EMPLOYEE as emp
         inner join "_SYS_BIC"."packeage/CalcView" (PLACEHOLDER."$$IP_SNAPSHOT_TIMESTAMP$$" => {$IP_SNAPSHOT_TIMESTAMP}, PLACEHOLDER."$$IP_REP_ID$$" => {$IP_REP_ID}) as mce1
         on emp.EMPLOYEE_CHAR = mce1.RZZPERNR
    How can I pass job parameters into HANA Calculation View from BODS?
    Thank you!
    With best regards,
    Sergey

    Hello
    There's nothing wrong with your theory, it will work as all Data Services is doing is constructing an SQL string as passing it to HANA.  Which version of HANA are you using?  The PLACEHOLDER syntax changed slightly, however I suspect you are missing some single quotes around your parameter values.
    Get the SQL working succesfully via the HANA Studio (or hdbsql) then reverse engineer the parameterised statement for the SQL transform.
    Michael

  • IF Statement in Join Line

    Is it possible to use a IF statement (i.e. CASE, DECODE) in the Join Line?
    I need create a query that depending on the value of a column it will determine if I use a column A or column B in my join statement. I was thinking something like the following:
    Select a.Value1, a.Value2, b.ColumnA, b.ColumnB
    FROM Table1 a
    INNER JOIN Table2 b ON a.Value2 = (if b.ColumnZ='Dept' then b.ColumnA else b.ColumnB END)
    Oracle Version 10g
    OS Windows XP
    Thanks in advance!

    Hi,
    Remember what a CASE expression does: it returns a single value in one of the SQL data types (such as VARCHAR2, NUMBER or DATE).
    Each THEN (or ELSE) clause of a CASE expression references something that the CASE expression might return, so after each THEN (or ELSE) keyword there must be a single value in one of the SQL data types.
    So you can't say:
    case tdsi.level_code
         when  'L'  then  tdsid.privilege_code = tdlm.location_code
         when  'R'  then  tdsid.privilege_code = tdlm.region_code
         when  'C'  then  tdsid.privilege_code = tdlm.country_code
    endWhat is the data type being returned? "tdsid.privilege_code = tdlm.location_code" is not a single value in any of the SQL data types.
    If location_code, region_code, country_code and privilege_code all have the same data type, then you can do something like this:
    join      dirpipe.dirpipe_location_map      tdlm      on      case tdsi.level_code
                                            when 'L' then tdlm.location_code
                                            when 'R' then tdlm.region_code
                                            when 'C' then tdlm.country_code
                                       end     = tdsid.privilege_code

  • Is not null and null join

    Hi, I am trying to properly display a list of tasks for a project however without a join to the project number (which I was aware of) and the employee table, I get over 500 results.
    The task can be created without a employee assigned to it so therefore the page does not require the field to be filled in.
    Here is the SQL code, any does anyone have any ideas?
    select
        pd.pk_proj_detail_id    "Task Number",
        pd.task_title           "Task Title",
        pd.DETAIL_STATUS        "Task Status",
        pm.name                 "Associated Project",
        pps.last_name||', '||pps.first_name||', '||pps.middle_initial||'.' "Assigned Employee",
        pd.TRACKIT_NUMBER       "TrackIt! Number",
        pd.CREATEBY_DATE        "Date Entered",
        pd.DATE_BEGIN           "Date Began",
        pd.ESTIMATED_DATE       "Estimated Completion Date",
        pd.DATE_END             "Date Completed"
    from
        PROTRAC_DETAIL pd,
        protrac_master pm,
        cobr.vw_pps_payroll pps,
        resources r
    where
        pd.fk_proj_master_id = pm.PK_PROJ_MASTER_ID
        and r.fk_master_id = pm.PK_PROJ_MASTER_ID
        and (r.emp_id = pps.emple_no
            or r.emp_id is null)

    It's 10g r2 with Application Express 3.1.0.00.32
    This is the tasks (detail) table
    ALTER TABLE PROTRAC_DETAIL
    DROP PRIMARY KEY CASCADE;
    DROP TABLE PROTRAC_DETAIL CASCADE CONSTRAINTS;
    CREATE TABLE PROTRAC_DETAIL
      PK_PROJ_DETAIL_ID      NUMBER                 NOT NULL,
      FK_PROJ_MASTER_ID      NUMBER,
      TRACKIT_NUMBER         NUMBER,
      DETAIL_DESCRIPTION     VARCHAR2(4000 CHAR),
      DETAIL_STATUS          VARCHAR2(19 CHAR),
      DETAIL_STATUS_COMMENT  VARCHAR2(4000 CHAR),
      DATE_BEGIN             DATE,
      DATE_END               DATE,
      ESTIMATED_DATE         DATE,
      CREATEBY_DATE          DATE,
      CREATEBY_USER          VARCHAR2(50 CHAR),
      LASTMOD_DATE           DATE,
      LASTMOD_USER           VARCHAR2(50 CHAR),
      TASK_TITLE             VARCHAR2(100 CHAR)
    TABLESPACE DEVPROTRAC_DATA
    PCTUSED    0
    PCTFREE    10
    INITRANS   1
    MAXTRANS   255
    STORAGE    (
                INITIAL          64K
                MINEXTENTS       1
                MAXEXTENTS       2147483645
                PCTINCREASE      0
                BUFFER_POOL      DEFAULT
    CREATE UNIQUE INDEX PROTRAC_DETAIL_PK ON PROTRAC_DETAIL
    (PK_PROJ_DETAIL_ID)
    TABLESPACE DEVPROTRAC_DATA
    PCTFREE    10
    INITRANS   2
    MAXTRANS   255
    STORAGE    (
                INITIAL          64K
                MINEXTENTS       1
                MAXEXTENTS       2147483645
                PCTINCREASE      0
                BUFFER_POOL      DEFAULT
    CREATE OR REPLACE TRIGGER BUI_PROTRAC_DETAIL
    before insert or update
    on PROTRAC_DETAIL
    referencing new as New old as Old
    for each row
    begin
        if inserting then
            select users_seq.nextval, sysdate, apex_application.g_user
                into :new.pk_proj_detail_id, :new.createby_date, :new.createby_user
                from dual;
        elsif updating then
            select sysdate, apex_application.g_user
                into :new.lastmod_date, :new.lastmod_user
                from dual;
        end if;
    end;
    SHOW ERRORS;
    ALTER TABLE PROTRAC_DETAIL ADD (
      CONSTRAINT PROTRAC_DETAIL_PK
    PRIMARY KEY
    (PK_PROJ_DETAIL_ID)
        USING INDEX
        TABLESPACE DEVPROTRAC_DATA
        PCTFREE    10
        INITRANS   2
        MAXTRANS   255
        STORAGE    (
                    INITIAL          64K
                    MINEXTENTS       1
                    MAXEXTENTS       2147483645
                    PCTINCREASE      0
    ALTER TABLE PROTRAC_DETAIL ADD (
      CONSTRAINT PROTRAC_DETAIL_NUM
    FOREIGN KEY (FK_PROJ_MASTER_ID)
    REFERENCES PROTRAC_MASTER (PK_PROJ_MASTER_ID));
    ALTER TABLE DEVPROTRAC.RESOURCES ADD (
      FOREIGN KEY (FK_DETAIL_ID)
    REFERENCES DEVPROTRAC.PROTRAC_DETAIL (PK_PROJ_DETAIL_ID));
    SET DEFINE OFF;
    Insert into PROTRAC_DETAIL
       (PK_PROJ_DETAIL_ID, FK_PROJ_MASTER_ID, TRACKIT_NUMBER, DETAIL_DESCRIPTION, DETAIL_STATUS,
        DETAIL_STATUS_COMMENT, DATE_BEGIN, DATE_END, ESTIMATED_DATE, CREATEBY_DATE,
        CREATEBY_USER, LASTMOD_DATE, LASTMOD_USER, TASK_TITLE)
    Values
       (34, 24, NULL, 'test', 'Queued',
        NULL, NULL, NULL, NULL, TO_DATE('10/30/2008 13:37:01', 'MM/DD/YYYY HH24:MI:SS'),
        'LREDMOND', TO_DATE('11/03/2008 15:19:35', 'MM/DD/YYYY HH24:MI:SS'), NULL, 'bananana');
    Insert into PROTRAC_DETAIL
       (PK_PROJ_DETAIL_ID, FK_PROJ_MASTER_ID, TRACKIT_NUMBER, DETAIL_DESCRIPTION, DETAIL_STATUS,
        DETAIL_STATUS_COMMENT, DATE_BEGIN, DATE_END, ESTIMATED_DATE, CREATEBY_DATE,
        CREATEBY_USER, LASTMOD_DATE, LASTMOD_USER, TASK_TITLE)
    Values
       (41, 40, NULL, '2354234', 'Queued',
        NULL, NULL, NULL, NULL, TO_DATE('10/31/2008 00:00:00', 'MM/DD/YYYY HH24:MI:SS'),
        'LREDMOND', TO_DATE('11/03/2008 13:52:02', 'MM/DD/YYYY HH24:MI:SS'), 'LREDMOND', 'I can type on the keyboarddf');
    Insert into PROTRAC_DETAIL
       (PK_PROJ_DETAIL_ID, FK_PROJ_MASTER_ID, TRACKIT_NUMBER, DETAIL_DESCRIPTION, DETAIL_STATUS,
        DETAIL_STATUS_COMMENT, DATE_BEGIN, DATE_END, ESTIMATED_DATE, CREATEBY_DATE,
        CREATEBY_USER, LASTMOD_DATE, LASTMOD_USER, TASK_TITLE)
    Values
       (49, 32, 78888, 'one day fishsticks will walk on the moon.', 'Queued',
        'waiting for fishsticks.', NULL, NULL, NULL, TO_DATE('11/03/2008 11:28:11', 'MM/DD/YYYY HH24:MI:SS'),
        'LREDMOND', NULL, NULL, 'Fix the keyboard');
    Insert into PROTRAC_DETAIL
       (PK_PROJ_DETAIL_ID, FK_PROJ_MASTER_ID, TRACKIT_NUMBER, DETAIL_DESCRIPTION, DETAIL_STATUS,
        DETAIL_STATUS_COMMENT, DATE_BEGIN, DATE_END, ESTIMATED_DATE, CREATEBY_DATE,
        CREATEBY_USER, LASTMOD_DATE, LASTMOD_USER, TASK_TITLE)
    Values
       (50, 38, NULL, 'dfdfdfdfdfdfdfdfdf', 'Queued',
        NULL, NULL, NULL, NULL, TO_DATE('11/03/2008 12:03:06', 'MM/DD/YYYY HH24:MI:SS'),
        'LREDMOND', TO_DATE('11/03/2008 15:19:44', 'MM/DD/YYYY HH24:MI:SS'), NULL, 'resreeeeeeeeee');
    Insert into PROTRAC_DETAIL
       (PK_PROJ_DETAIL_ID, FK_PROJ_MASTER_ID, TRACKIT_NUMBER, DETAIL_DESCRIPTION, DETAIL_STATUS,
        DETAIL_STATUS_COMMENT, DATE_BEGIN, DATE_END, ESTIMATED_DATE, CREATEBY_DATE,
        CREATEBY_USER, LASTMOD_DATE, LASTMOD_USER, TASK_TITLE)
    Values
       (33, 31, NULL, 'Make sure the bananas are fresh', 'Queued',
        NULL, NULL, NULL, NULL, TO_DATE('10/29/2008 00:00:00', 'MM/DD/YYYY HH24:MI:SS'),
        'LREDMOND', TO_DATE('11/03/2008 15:19:52', 'MM/DD/YYYY HH24:MI:SS'), NULL, 'e543563465');
    Insert into PROTRAC_DETAIL
       (PK_PROJ_DETAIL_ID, FK_PROJ_MASTER_ID, TRACKIT_NUMBER, DETAIL_DESCRIPTION, DETAIL_STATUS,
        DETAIL_STATUS_COMMENT, DATE_BEGIN, DATE_END, ESTIMATED_DATE, CREATEBY_DATE,
        CREATEBY_USER, LASTMOD_DATE, LASTMOD_USER, TASK_TITLE)
    Values
       (48, 37, NULL, 'guitar heros! yay', 'Queued',
        NULL, NULL, NULL, NULL, TO_DATE('11/03/2008 11:26:06', 'MM/DD/YYYY HH24:MI:SS'),
        'LREDMOND', TO_DATE('11/03/2008 15:19:57', 'MM/DD/YYYY HH24:MI:SS'), NULL, '34444444444444543etfg');
    COMMIT;This is for the resources table:
    ALTER TABLE RESOURCES
    DROP PRIMARY KEY CASCADE;
    DROP TABLE RESOURCES CASCADE CONSTRAINTS;
    CREATE TABLE RESOURCES
      PK_RESOURCES_ID   NUMBER,
      FK_DETAIL_ID      NUMBER,
      EMP_ID            NUMBER,
      RESOURCE_STATUS   VARCHAR2(8 CHAR),
      RESOURCE_COMMENT  VARCHAR2(4000 CHAR),
      CREATEBY_DATE     DATE,
      CREATEBY_USER     VARCHAR2(50 CHAR),
      LASTMOD_DATE      DATE,
      LASTMOD_USER      VARCHAR2(50 CHAR),
      FK_MASTER_ID      NUMBER
    TABLESPACE DEVPROTRAC_DATA
    PCTUSED    0
    PCTFREE    10
    INITRANS   1
    MAXTRANS   255
    STORAGE    (
                INITIAL          64K
                MINEXTENTS       1
                MAXEXTENTS       2147483645
                PCTINCREASE      0
                BUFFER_POOL      DEFAULT
    CREATE UNIQUE INDEX RESOURCES_PK ON RESOURCES
    (PK_RESOURCES_ID)
    TABLESPACE DEVPROTRAC_DATA
    PCTFREE    10
    INITRANS   2
    MAXTRANS   255
    STORAGE    (
                INITIAL          64K
                MINEXTENTS       1
                MAXEXTENTS       2147483645
                PCTINCREASE      0
                BUFFER_POOL      DEFAULT
    CREATE OR REPLACE TRIGGER BUI_RESOURCES
    before insert or update
    on RESOURCES
    referencing new as New old as Old
    for each row
    begin
        if inserting then
            select users_seq.nextval, sysdate, apex_application.g_user
                into :new.pk_resources_id, :new.createby_date, :new.createby_user
                from dual;
        elsif updating then
            select sysdate, apex_application.g_user
                into :new.lastmod_date, :new.lastmod_user
                from dual;
        end if;
    end;
    SHOW ERRORS;
    ALTER TABLE RESOURCES ADD (
      CONSTRAINT RESOURCES_PK
    PRIMARY KEY
    (PK_RESOURCES_ID)
        USING INDEX
        TABLESPACE DEVPROTRAC_DATA
        PCTFREE    10
        INITRANS   2
        MAXTRANS   255
        STORAGE    (
                    INITIAL          64K
                    MINEXTENTS       1
                    MAXEXTENTS       2147483645
                    PCTINCREASE      0
    ALTER TABLE RESOURCES ADD (
      FOREIGN KEY (FK_DETAIL_ID)
    REFERENCES PROTRAC_DETAIL (PK_PROJ_DETAIL_ID),
      FOREIGN KEY (FK_MASTER_ID)
    REFERENCES PROTRAC_MASTER (PK_PROJ_MASTER_ID));
    SET DEFINE OFF;
    Insert into RESOURCES
       (PK_RESOURCES_ID, FK_DETAIL_ID, EMP_ID, RESOURCE_STATUS, RESOURCE_COMMENT,
        CREATEBY_DATE, CREATEBY_USER, LASTMOD_DATE, LASTMOD_USER, FK_MASTER_ID)
    Values
       (53, 50, 356654, 'Active', NULL,
        TO_DATE('11/04/2008 09:32:06', 'MM/DD/YYYY HH24:MI:SS'), 'LREDMOND', NULL, NULL, NULL);
    Insert into RESOURCES
       (PK_RESOURCES_ID, FK_DETAIL_ID, EMP_ID, RESOURCE_STATUS, RESOURCE_COMMENT,
        CREATEBY_DATE, CREATEBY_USER, LASTMOD_DATE, LASTMOD_USER, FK_MASTER_ID)
    Values
       (51, 41, 447250, 'Active', 'No Sure.',
        TO_DATE('11/03/2008 14:23:11', 'MM/DD/YYYY HH24:MI:SS'), NULL, TO_DATE('11/04/2008 09:00:04', 'MM/DD/YYYY HH24:MI:SS'), NULL, 40);
    Insert into RESOURCES
       (PK_RESOURCES_ID, FK_DETAIL_ID, EMP_ID, RESOURCE_STATUS, RESOURCE_COMMENT,
        CREATEBY_DATE, CREATEBY_USER, LASTMOD_DATE, LASTMOD_USER, FK_MASTER_ID)
    Values
       (54, 50, 323829, 'Active', NULL,
        TO_DATE('11/04/2008 10:26:08', 'MM/DD/YYYY HH24:MI:SS'), 'LREDMOND', NULL, NULL, 38);
    Insert into RESOURCES
       (PK_RESOURCES_ID, FK_DETAIL_ID, EMP_ID, RESOURCE_STATUS, RESOURCE_COMMENT,
        CREATEBY_DATE, CREATEBY_USER, LASTMOD_DATE, LASTMOD_USER, FK_MASTER_ID)
    Values
       (52, 33, 8915, 'Active', 'get to work',
        TO_DATE('11/03/2008 15:20:18', 'MM/DD/YYYY HH24:MI:SS'), 'LREDMOND', TO_DATE('11/03/2008 15:35:10', 'MM/DD/YYYY HH24:MI:SS'), NULL, NULL);
    COMMIT;The results I want is everything above regardless of emp_id assigned (if any). Without the r.emp_id = pps.emple_no join, the query will generate 234234239482304234 results.
    Hope this helps.
    Edited by: leland on Nov 4, 2008 12:56 PM

  • Wrong display of No. of days worked in Payslip for mid-month joining

    Dear Experts,
    We use PE51, form editor for payslip for indian payrol. Our issue is when an employee joins mid of the month or say 4th of any month, still in payslip it shows no. of working days as 30/31 days instead of actual days worked. But pay results are correctly being calculated on factoring basis.
    Please let me know how to resolve it, we use PCR ZNP1 for factoring which is written as follows
    ZNP1 Partial factors for India - /801(CD), /802(WD), /803(WH),/804(Nom)
          /801 Partial period factor 1
            RTE=TKSOLL Set
            RTE-TKAU** Subtraction
            RTE*KGENAU Multiplication
            RTE/TKDIVI Division
            ADDWT *    OT   Output table
          /802 Partial period factor 2
            RTE=TASOLL Set
            RTE-TAAU** Subtraction
            RTE*KGENAU Multiplication
            RTE/TADIVI Division
            ADDWT *    OT   Output table
          /803 Partial period factor 3
            RTE=TSSOLL Set
            RTE-TSAU** Subtraction
            RTE*KGENAU Multiplication
            RTE/TSDIVI Division
            ADDWT *    OT   Output table
          /804 Partial period factor 4
          /805 Partial period factor 5
          /806 Partial period factor 6
          /807 Partial period factor 7
    Please guide, if i need to modify it for getting correct working days display in payslip
    Regards
    Tan

    in that case the Requirement is to display no of working days of employee in a month
    Here working days means
    Total Calendar Days - Unpaid days - Paid days =  working days ( please check the said one again since i have inculded the paid days and unpaid days if u want u can remove paid days)
    so in order to fetch this
    we need Calendar days that is TKSOLL
    Unpaid days   check the technical wage types /845  Paid days /846  ( you can have custom wage types too)
    Copy a wage type from standrad overtime wage type  that will be  1555
    The PCR is as follows
    NUM=TKSOLL  (calendar Days)
    NUM-E  /846      Paid days
    NUM-E /845
    ADDWT 15555
    Use ACTIO function and insert it any where in Sub Schema XT00

  • For the mid month new joiner the annual Conveyance exemption is coming incorrectly

    Dear All,
    For one of our client, we have have faced a uniqe issue.
    If any employee join in the mid of the month, his prorated conveyance amount ( wage type 2020) is coming correctly. Suppose an employee joined at 16th of the month, system is calculating his conveyance for that month as INR 400 and which is correct.
    However in his tax calculation for that particular month, system is taking INR 400*(rest of the month of the FY) in the wage type /4E3. which is incorrect. Suppose he joined in 16th April , system is calculating tax exemption 400*12=4800
    Now if we run next month payroll ,  system is caculating the exemption properly. i.e. INR 400 + 800* rest of the month of the FY,
    Please help
    Regards
    Tirtha

    Hi Tirtha,
    system is calculating perfectly.
    first of all system check the no. of present days and accordingly it give the amount in the wage type /3C3 conveyance amount monthly and /3C4 will give Conveyance monthly exemption and it will multiply with no. of months to the fiscal year end and store in the wage type /4E3.
    for example check for PF:
    Every month PF amount store in WT /3F1 and send to /3F5 and this WT multiplied with No. of months and store the Annual amount in wt /3F6.
    Regards,
    Praneeth kumar

  • Mid Month Joining-PF Basis Calculation

    Hi All,
    I have an emplyee whose joining is in the 3rd week of the month 23.04.2011.
    His basic is 25000, 8 days working basic is 6667.
    I want to restrict his PF contribution to PF at 780 his actual contri coming as 800, 12% of basic.
    Here i want that system should maintain his PF as 780 not 800.
    I tried marking Eligible pay Or Pf BAsis Which ever is less but of no use.
    I have already gone through the Threads which suggest to go through User Exit: Override Employer Pension Basis.But it is not for PF Basis.
    If any PCR is available for the same ?
    Can any body guide me on the same?

    Hi,
    the system is working fine if the person is present in the trust the full month by selecting the Eligible Pay Or PF base pay
    which ever is  less.
    But when it comes to joining in the end of the month say 23 or 25th of the month & the employee is present in the trust for 8 or 5 days & if i try to take the basic as 6500 although the basic is higher than 6500(actual basic 25000, ,8 days-6667),if i select the
    Eligible Pay Or PF base pay which ever is  less,either it doest take the 6500 consideration or it calculates PF as 208.
    Puting the RT details here when  Eligible Pay Or PF base pay which ever is  less is selected.
    /101 Total gross                                                             11,223.33
    /111 EPF Basis                                                                6,666.67
    /112 ESI Basis                                                                 11,223.33
    /113 ESI Basis N                         26,666.67                    11,010.00
    /114 HRA Basis                                                              6,666.67
    /115 COA/CLA Bas                                                         9,973.33
    /116 Gratuity Ba                                                            6,666.67
    /117 Superannuat                                                         6,666.67
    /120 Nom. ExGrat                         26,666.67                  6,666.67
    /121 Nom. ExGrat                         26,666.67                6,666.67
    /124 Mon Reg Inc                                                           9,973.33
    /125 Mon Irr Inc                                                             1,250.00
    /128 Leave Encas                                                           6,666.67
    /129 Voluntary R                                                           25,000.01
    /134 Annual Non-                                                          1,250.00
    /136 1DSD Basis                                                             6,666.67
    /137 1DSD Basis                                                             6,666.67
    /138 Form 217 2(                                                           11,223.33
    /139 VPF Basis                                                                6,666.67
    /140 LWF Basis                                                              6,880.00
    /3F1 Ee PF contr0101                                                     208.00
    /3F3 Er PF contr0101                                                    245.00
    /3F4 Er Pension 0101                                                   555.00
    /3F5 Ee Mon PF c                                                          208.00
    /3F6 Ee Ann PF c                                                           8,788.00
    /3F7 EDLI contri0101                                                   3,333,335.00
    /3F8 EDLI adm ch0101                                                66,667.00
    /3F9 PF adm chrg0101                                                7,333,337.00
    /3FA PF basis fo0101                                                 1,733.00
    /3FB PF Basis fo0101                                                 6,667.00
    /3FC Pension Bas0101                                                 6,667.00
    /3FJ VPF basis f0101                                                 1,733.00
    /3FL PF Basis fo0101                                                 6,667.00
    /3I1 Deduction u                                                     8,788.00
    /3I2 Gross amoun                                                     8,788.00

  • Joining open and closed paths

    Hi
    Is it possible to join an open path (created with the Pen Tool) to a close path (also created with the Pen Tool)?
    Grechy01

    I want to create a complex piece of artwork by using line art created with the Pen Tool and color it by filling in the paths with the Live Paint Bucket. Anyway, I should be able achieve this with not much extra work by using overlapping closed paths, Average function (under Object --> Path) to align the point where the two closed paths cross, Pathfinder Merge function and multiple layers to remove the segments of the path that I don’t want and the Live Paint Bucket to color the artwork. If you can think of an easer way to do this please let me know.

  • Join is not working in webi report

    I have let's say three tables; one fact and two dimensions;
    I manually joined each dimension table with the fact with 1 to many cardinality...
    Now I'm trying to run a test report using few fields from each dimension and it doesn't seem to join; in the SQL Viewer in Edit Query mode, it has two queries under Synchronization...it doesn't show a joined query between tables....
    I have a similar setup in another universe that is out of the box solution and that seems to work just fine...
    Am I missing something here...Please help!

    Hi Ahmed,
    Along with the context that is present in your universe, check under the parameters the fifth tab i.e. the sql tab.
    In this see whether the options are checked or not.
    the options :
    1.Multiple sql statements for each context.
    2.Multiple sql statements for each measure.
    Gaurav

  • My wife and I have made many purchases over several years on seperate accounts, how could we join them into one account, without losing everything?

    My wife and I have made many purchases over several years on seperate accounts, how could we join them into one account, without losing everything? We both use Iphone 5's and share an Imac at home.

    Purchases using one Apple ID cannot be merged or transferred to another Apple ID. Purchases are forever tied to that Apple ID used. You have to decide which Apple you want to use for purchases and stick to that Apple ID so that you can share: Settings > iTunes & App Stores > Apple ID : > use the same Apple ID here to share purchases.

Maybe you are looking for