How can I load a data in multiple period with a rule files?

Hi!
I need to create a rule file the permit me to load a record with multiple period.
How can I do it?
Thanks in advance.
Bye

As Glenn said, these two types are the typical input files.
two ways that I can easily think of, but there are more.
1. Have a row memberwith the period so for sample basic, the row would look lik
cola,ny,actual,sales,Jan,100
First case in the rule file you have to map all the member fileds with the dimension name and the data column with the data field.
2. Have the data for each month as as the column members
Here is the header followed by a data sample(again for sample basic)
Product,Market,Scenario,Measure,Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec
1oo-10,NY,Actual,Sales,100,100,100,100,100,100,100,010,122,111,222,333
Second case in the rule file you have to map all the member fileds with the corresponding dimension name and the multiple data columns with the corresponding member names for that dimension.

Similar Messages

  • How can I load my data faster?  Is there a SQL solution instead of PL/SQL?

    11.2.0.2
    Solaris 10 sparc
    I need to backfill invoices from a customer. The raw data has 3.1 million records. I have used pl/sql to load these invoices into our system (dev), however, our issue is the amount of time it's taking to run the load - effectively running at approx 4 hours. (Raw data has been loaded into a staging table)
    My research keeps coming back to one concept: sql is faster than pl/sql. Where I'm stuck is the need to programmatically load the data. The invoice table has a sequence on it (primary key = invoice_id)...the invoice_header and invoice_address tables use the invoice_id as a foreign key. So my script takes advantage of knowing the primary key and uses that on the subsequent inserts to the subordinate invoice_header and invoice_address tables, respectively.
    My script is below. What I'm asking is if there are other ideas on the quickest way to load this data...what am I not considering? I have to load the data in dev, qa, then production so the sequences and such change between the environments. I've dummied down the code to protect the customer; syntax and correctness of the code posted here (on the forum) is moot...it's only posted to give the framework for what I currently have.
    Any advice would be greatly appreciated; how can I load the data faster knowing that I need to know sequence values for inserts into other tables?
    DECLARE
       v_inv_id        invoice.invoice_id%TYPE;
       v_inv_addr_id    invoice_address.invoice_address_id%TYPE;
       errString        invoice_errors.sqlerrmsg%TYPE;
       v_guid          VARCHAR2 (128);
       v_str           VARCHAR2 (256);
       v_err_loc       NUMBER;
       v_count         NUMBER := 0;
       l_start_time    NUMBER;
       TYPE rec IS RECORD
          BILLING_TYPE             VARCHAR2 (256),
          CURRENCY                 VARCHAR2 (256),
          BILLING_DOCUMENT         VARCHAR2 (256),
          DROP_SHIP_IND            VARCHAR2 (256),
          TO_PO_NUMBER        VARCHAR2 (256),
          TO_PURCHASE_ORDER   VARCHAR2 (256),
          DUE_DATE                 DATE,
          BILL_DATE                DATE,
          TAX_AMT                  VARCHAR2 (256),
          PAYER_CUSTOMER           VARCHAR2 (256),
          TO_ACCT_NO          VARCHAR2 (256),
          BILL_TO_ACCT_NO          VARCHAR2 (256),
          NET_AMOUNT               VARCHAR2 (256),
          NET_AMOUNT_CURRENCY      VARCHAR2 (256),
          ORDER_DT             DATE,
          TO_CUSTOMER         VARCHAR2 (256),
          TO_NAME             VARCHAR2 (256),
          FRANCHISES       VARCHAR2 (4000),
          UPDT_DT                  DATE
       TYPE tab IS TABLE OF rec
                      INDEX BY BINARY_INTEGER;
       pltab           tab;
       CURSOR c
       IS
          SELECT   billing_type,
                   currency,
                   billing_document,
                   drop_ship_ind,
                   to_po_number,
                   to_purchase_order,
                   due_date,
                   bill_date,
                   tax_amt,
                   payer_customer,
                   to_acct_no,
                   bill_to_acct_no,
                   net_amount,
                   net_amount_currency,
                   order_dt,
                   to_customer,
                   to_name,
                   franchises,
                   updt_dt
            FROM   BACKFILL_INVOICES;
    BEGIN
       l_start_time := DBMS_UTILITY.get_time;
       OPEN c;
       LOOP
          FETCH c
          BULK COLLECT INTO pltab
          LIMIT 1000;
          v_err_loc := 1;
          FOR i IN 1 .. pltab.COUNT
          LOOP
             BEGIN
                v_inv_id :=  SEQ_INVOICE_ID.NEXTVAL;
                v_guid := 'import' || TO_CHAR (CURRENT_TIMESTAMP, 'hhmissff');
                v_str := str_parser (pltab (i).FRANCHISES); --function to string parse  - this could be done in advance, yes.
                v_err_loc := 2;
                v_count := v_count + 1;
                INSERT INTO    invoice nologging
                     VALUES   (v_inv_id,
                               pltab (i).BILL_DATE,
                               v_guid,
                               '111111',
                               'NONE',
                               TO_TIMESTAMP (pltab (i).BILL_DATE),
                               TO_TIMESTAMP (pltab (i).UPDT_DT),
                               'READ',
                               'PAPER',
                               pltab (i).payer_customer,
                               v_str,
                               '111111');
                v_err_loc := 3;
                INSERT INTO    invoice_header nologging
                     VALUES   (v_inv_id,
                               TRIM (LEADING 0 FROM pltab (i).billing_document), --invoice_num
                               NULL,
                               pltab (i).BILL_DATE,                 --invoice_date
                               pltab (i).TO_PO_NUMBER,
                               NULL,
                               pltab (i).net_amount,
                               NULL,
                               pltab (i).tax_amt,
                               NULL,
                               NULL,
                               pltab (i).due_date,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               TO_TIMESTAMP (SYSDATE),
                               TO_TIMESTAMP (SYSDATE),
                               PLTAB (I).NET_AMOUNT_CURRENCY,
                               (SELECT   i.bc_value
                                  FROM   invsvc_owner.billing_codes i
                                 WHERE   i.bc_name = PLTAB (I).BILLING_TYPE),
                               PLTAB (I).BILL_DATE);
                v_err_loc := 4;
                INSERT INTO    invoice_address nologging
                     VALUES   (invsvc_owner.SEQ_INVOICE_ADDRESS_ID.NEXTVAL,
                               v_inv_id,
                               'BLAH INITIAL',
                               pltab (i).BILL_DATE,
                               NULL,
                               pltab (i).to_acct_no,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               SYSTIMESTAMP,
                               NULL);
                v_err_loc := 5;
                INSERT INTO    invoice_address nologging
                     VALUES   ( SEQ_INVOICE_ADDRESS_ID.NEXTVAL,
                               v_inv_id,
                               'BLAH',
                               pltab (i).BILL_DATE,
                               NULL,
                               pltab (i).TO_ACCT_NO,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               SYSTIMESTAMP,
                               NULL);
                v_err_loc := 6;
                INSERT INTO    invoice_address nologging
                     VALUES   ( SEQ_INVOICE_ADDRESS_ID.NEXTVAL,
                               v_inv_id,
                               'BLAH2',
                               pltab (i).BILL_DATE,
                               NULL,
                               pltab (i).TO_CUSTOMER,
                               pltab (i).to_name,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               SYSTIMESTAMP,
                               NULL);
                v_err_loc := 7;
                INSERT INTO    invoice_address nologging
                     VALUES   ( SEQ_INVOICE_ADDRESS_ID.NEXTVAL,
                               v_inv_id,
                               'BLAH3',
                               pltab (i).BILL_DATE,
                               NULL,
                               'SOME PROPRIETARY DATA',
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               NULL,
                               SYSTIMESTAMP,
                               NULL);
                v_err_loc := 8;
                INSERT
                  INTO    invoice_event nologging (id,
                                                             eid,
                                                             root_eid,
                                                             invoice_number,
                                                             event_type,
                                                             event_email_address,
                                                             event_ts)
                VALUES   ( SEQ_INVOICE_EVENT_ID.NEXTVAL,
                          '111111',
                          '222222',
                          TRIM (LEADING 0 FROM pltab (i).billing_document),
                          'READ',
                          'some_user@some_company.com',
                          SYSTIMESTAMP);
                v_err_loc := 9;
                INSERT INTO   backfill_invoice_mapping
                     VALUES   (v_inv_id,
                               v_guid,
                               pltab (i).billing_document,
                               pltab (i).payer_customer,
                               pltab (i).net_amount);
                IF v_count = 10000
                THEN
                   COMMIT;              
                END IF;
             EXCEPTION
                WHEN OTHERS
                THEN
                   errString := SQLERRM;
                   INSERT INTO   backfill_invoice_errors
                        VALUES   (
                                    pltab (i).billing_document,
                                    pltab (i).payer_customer,
                                    errString || ' ' || v_err_loc
                   COMMIT;
             END;
          END LOOP;
          v_err_loc := 10;
          INSERT INTO   backfill_invoice_timing
               VALUES   (
                           ROUND ( (DBMS_UTILITY.get_time - l_start_time) / 100,
                                  2)
                           || ' seconds.',
                           (SELECT   COUNT (1)
                              FROM   backfill_invoice_mapping),
                           (SELECT   COUNT (1)
                              FROM   backfill_invoice_errors),
                           SYSDATE
          COMMIT;
          EXIT WHEN c%NOTFOUND;
       END LOOP;
       COMMIT;
    EXCEPTION
       WHEN OTHERS
       THEN
          errString := SQLERRM;
          INSERT INTO   backfill_invoice_errors
               VALUES   (NULL, NULL, errString || ' ' || v_err_loc);
          COMMIT;
    END;

    Hello
    You could use insert all in your case and make use of sequence.NEXTVAL and sequence.CURRVAL like so (excuse any typos - I can't test without table definitions). I've done the first 2 tables, so it's just a matter of adding the rest in...
    INSERT ALL
         INTO      invoice nologging
                    VALUES   (     SEQ_INVOICE_ID.NEXTVAL,
                                   BILL_DATE,
                                    my_guid,
                                    '111111',
                                    'NONE',
                                    CAST(BILL_DATE AS TIMESTAMP),
                                    CAST(UPDT_DT AS TIMESTAMP),
                                    'READ',
                                    'PAPER',
                                    payer_customer,
                                    parsed_francises,
                                    '111111'
         INTO      invoice_header
              VALUES   (      SEQ_INVOICE_ID.CURRVAL,
                        TRIM (LEADING 0 FROM billing_document), --invoice_num
                        NULL,
                        BILL_DATE,                 --invoice_date
                        TO_PO_NUMBER,
                        NULL,
                        net_amount,
                        NULL,
                        tax_amt,
                        NULL,
                        NULL,
                        due_date,
                        NULL,
                        NULL,
                        NULL,
                        NULL,
                        NULL,
                        SYSTIMESTAMP,
                        SYSTIMESTAMP,
                        NET_AMOUNT_CURRENCY,
                        bc_value,
                        BILL_DATE)
         SELECT 
         src.billing_type,
              src.currency,
              src.billing_document,
              src.drop_ship_ind,
              src.to_po_number,
              src.to_purchase_order,
              src.due_date,
              src.bill_date,
              src.tax_amt,
              src.payer_customer,
              src.to_acct_no,
              src.bill_to_acct_no,
              src.net_amount,
              src.net_amount_currency,
              src.order_dt,
              src.to_customer,
              src.to_name,
              src.franchises,
              src.updt_dt,
              str_parser (src.FRANCHISES) parsed_franchises,
              'import' || TO_CHAR (CURRENT_TIMESTAMP, 'hhmissff') my_guid,
              i.bc_value
            FROM        BACKFILL_INVOICES src,
                 invsvc_owner.billing_codes i
         WHERE   i.bc_name = src.BILLING_TYPE;Some things to note
    1. Don't commit in a loop - you only add to the run time and load on the box ultimately reducing scalability and removing transactional integrity. Commit once at the end of the job.
    2. Make sure you specify the list of columns you are inserting into as well as the values or columns you are selecting. This is good practice as it protects your code from compilation issues in the event of new columns being added to tables. Also it makes it very clear what you are inserting where.
    3. If you use WHEN OTHERS THEN... to log something, make sure you either rollback or raise the exception. What you have done in your code is say - I don't care what the problem is, just commit whatever has been done. This is not good practice.
    HTH
    David
    Edited by: Bravid on Oct 13, 2011 4:35 PM

  • HT4854 How can I load Mountain Lion to multiple Macs

    How can I load Mountain Lion to multiple Macs without downloading the huge 4Gb file to each machine?

    I've never done that, but I don't see why it wouldn't. There is no verification or authentication keys in the installer.
    If you need 20+ licenses*, then you might take a look at the volume licensing: http://www.apple.com/mac/volume-licensing/
    It describes the same process I described.
    * I think 20 is the minimum. Not sure, though.

  • How can i import the data from multiple sources into single rpd in obiee11g

    how can i import the data from multiple sources into single rpd in obiee11g

    Hi,
    to import from multiple data sources, first configure ODBC connections for respective data sources. then you can import data from multiple data sources. When you import the data, a connection pool will create automatically.
    tnx

  • How can I log the data transmission of my switch in a file to analyze the quality of my communication channel?

    How can I log the data transmission of my switch in a file to analyze the quality of my communication channels?

    A lot depends on what type of switch you have and what kind of communication channels you're asking about.
    There are several Cisco tools (e.g., "ip sla", SNMP-queried values, show commands etc.) that can give useful information.
    If you give us some more information we can help more specifically.

  • How can I load xcel data into simulate arbitary signal VI

    Hello,
    I am using the labview arbitary signal creator , now i have a pattern which can be easily created in microsoft xcel but i need to load the data in the simulate arbitary signal VI so essentially i need to convert an xcel file into a LVM file . Can i somehow load the xcel data as LVM data.
    Thanks
    Ams

    Ams wrote:
    Hello,
    I am using the labview arbitary signal creator , now i have a pattern which can be easily created in microsoft xcel but...
    If you can generate it in excel, it would be even easier to generate it directly in LabVIEW. Are we still talking about the staircase funcion?
    http://forums.ni.com/ni/board/message?board.id=170​&message.id=221036
    LabVIEW Champion . Do more with less code and in less time .

  • How can I load the data of Manager Beans into an Array?

    Hi all!
    I have a problem when use the ADF model layer (JDeveloper 10g). I want to load the data of a Manager Bean into Array(such as: Array in JavaScript).But I don't know any ways to do.
    Are there any ways to do that?
    Please, help me!
    Thanks so much!

    Hi,
    there is a fundamental difference between an array in Java and an array in JavaScript as the latter is added to the output page while the first sits in a Java class on the server.
    Populating a Java array from a managed bean is straight froward: Just create the Array, loop through the source of the data - ADF binding or the ADF Faces table component - and fill it.
    For a JavaScript Array I would suggest to write the array into a js file and reference it from the web page (which might cause concurrency issues).
    Frank

  • How can I restore my data from a backup with different Phone name?

    I recently had to restore my iphone which erased all the data. I have a backup of that data in iTunes and I want to restore it to the phone. However when I connected the phone to iTunes the first time after resetting everything, I accidently chose to create a new phone instead of restore settings and data from the backup.
    My question is, how can I restore the iPhone from this previous backup? My iPhone is currently called "untitled playlist" and the backup is called "JC's iPhone".
    Thanks,
    Jeremy
    ps. Sorry for posting twice. Nobody responded the first time, probably because I had a poor subject.

    Jeremy,
    If you restore again, you will be prompted to choose a backup or setup as a new phone again. Then you can just choose your old backup.
    Hope this helps,
    Jennifer B.

  • Using Labview how can one store different data in different sheets of same excel file, I mean how to select different sheets to store data??

    Hello Everyone,
    I want to store various data but in different sheets of excel file. So how to select Different sheets of same excel file???
    Thanks so much 
    Pallavi 

    aeastet wrote:
    Why do you not want to use Active X?
    One very good reason that I can think of is that MS keeps changing their ActiveX interface with each version of Excel, so code written for one version of Excel using ActiveX may not work for another version of Excel, even though the basic functionality hasn't changed. A perfect example is when MS changed the "Value" property to "Value2". Yeah, that made a whole lot of sense.
    pals wrote:
    I dont want to use active X as i am not
    getting results... by using write to spreadsheet in am getting results
    but on just one sheet... I want different data on different sheets of
    same excel file. So....
    Can anyone help me in this...
    Then it's something you're doing. Please post your code. Have you tried a search on this forum for ActiveX and Excel? There have been tons of posts on it, including lots of examples. There's also the Excel thread.

  • How can I Reconcile all tables on multiples mappings with scripting????

    I have OWB 9.2.0.2.8
    I have to reconcile all tables and external tables on multiple mappings.
    How can I do it with scripting language, please?
    Thanks very much in advance!!!!

    Good afternoon Claudio,
    Should be something like this:
    foreach mapName [OMBLIST MAPPINGS] {
      puts "Checking $mapName"
      foreach tabName [OMBRETRIEVE MAPPING '$mapName' GET TABLE OPERATORS] {
        puts "Reconciling $tabName"
        OMBRECONCILE TABLE '$tabName' \
          TO MAPPING '$mapName' \
          OPERATOR '$tabName' \
          USE (RECONCILE_STRATEGY 'REPLACE', MATCHING_STRATEGY 'MATCH_BY_OBJECT_ID');
    }If you want to alter reconcile and/or matching strategy, check documentation on OMBRECONCILE in the OWB Scripting Reference.
    Good luck, Patrick

  • How can I change the dates on many photos with a fix time of say 20s?

    Before it was possible to change the date on many pictures scanned by adddind a fix increlental of time.
    How can I now change the dates on many pictures taht I have renumbered to keep the same incremental?

    The seconds:
    I just remembered - the time increment is set in Apple Script in seconds -  the variable  "minutes" is just a name for the value "60" and "hours" for "3600". Since "seconds" would have the value "1", there is no predefined constant "seconds".
    If you want an increment of 30 seconds, simply write
    set timeIncrement to 30
    For example
    on run {input, parameters}
      (* copyright leonieDF *)
              set timeIncrement to (1 * hours) + (2 * minutes) + 30
      (* select at least 2 images in Aperture *)
              tell application "Aperture"
      activate
                        set imageSel to (get selection)
                        if imageSel is {} then
                                  error "Please select an image."
                        else
                                  tell (item 1 of imageSel)
                                            set imageDate to value of EXIF tag "ImageDate"
      --set imageDate to get the value of EXIF tag "ImageDate"
                                  end tell
                                  repeat with i from 2 to count of imageSel
                                            set imageDate to imageDate + timeIncrement
      adjust image date imageDate of images {item i of imageSel}
                                  end repeat
                        end if
                        return imageSel
              end tell
    end run

  • How can i print a AdvancedDataGrid in multiple pages with ColumnHeaders?

    Hi all,
    I need to print a AdavancedDataGrid in multiple pages with columnheaders in all pages.
    Rite now, i can able to print column headers in first page only.
    is there any chance to split the ADG into multiple pages with columnheaders??
    Thanks in Advance
    Shravan.

    Shardul,
    Thanks for your help.
    Your logic is working fine when i have a single datagrid.
    What i'm doing here is, i took a VBox(playout) and printing 2 ADG's in that,so the column headers of 2nd ADG are not printing when it continues to next page.
    Here is the sample code:
    custComp1
    custComp2 are ADG's
    <mx:VBox id="playout" width="100%" visible="false" includeInLayout="false"></mx:VBox>
    private function preparePrint():void{
    var x:custComp1 = new custComp1();
    var y:custComp2 = new custComp2();
    x.dataProvider = arrayColl1;
    playout.addChild(x);
    if(arrayColl2 >=1){
    playout.addChild(y);
    y.dataprovider = arryColl2;
    while(y.adg.validNextPage){
    playout.addChild(y);
    y.adg.nextPage();
    private function doPrint(event:Event):void{
    var printJob:FlexPrintJob = new FlexPrintJob();
    if(printJob.start()) {
    playout.includeInLayout = true;
    playout.visible = true;
    printJob.addObject(playout);
    printJob.send();
    playout.visible = false;
    playout.includeInLayout = false;
    is there any way to get column headers when we use printing multiple ADG's in a VBox?

  • How can I remove my name from being associated with the GB file I export?

    I am using Garage Band '11, 6.0.5.
    I am editing an audio recording for a friend.
    When I exported the edited recording, it had my name associated with the file as the artist, album, etc.
    I searched and found "My info" (in "Preferences") and deleted my information from ALL name, album, artist fields, but it still exported the file with my name as the artist (but it did not list it as from my album this time)?
    Does anyone know how/where/what I need to do to remove all references of my name associated with this file I'm editing?
    And also, can I change who is associated with a GB file, from file to file (i.e. if editing my audio, use my name & info, if editing for a friend or colleague, theirs?  or is the name associated with my GB account universally embedded into every file, no matter if I want it to be mine or not)?
    Thank you for your support!
    Joe

    When I exported the edited recording, it had my name associated with the file as the artist, album, etc.
    The problem is, that this information is stored with the GarageBand project, when you first create the project.  You have to edit the Preferences, before you create the project.
    If the project already exists, you can change this option by turning the project into a podcast. Add a Podcast track (Track menu, Show Podcast Track), select the podcast track, and open the Info panel. Then edit the artist field in the Info panel, before you save the song to disk.
    (added: I saw the workaround with the Podcast track first in a post by Edgar).

  • How can I load iCal data into Calendar and Address Book data into Contacts?

    I just bought a MacBook Pro running Yosemite. Migration Assistant could not read the Backup of my old, dead iMac, so I have been transferring data manually. So far Contacts and Calendar are the only Apps I have not been able to set up.

    What OS was the iMac running? I ask because where data is stored can change.

  • New computer with ipad2. old computer broken.how can i backup the data?

    old laptop broken. how can i input the data to new labtop with new itune?

    Are you able to get the hard drive from the old computer? if so then your can install the drive in a external enclosure and transfer the data to your new computer. 

Maybe you are looking for

  • How can i delete all of my SENT emails at once?

    I would like to get rid of my SENT emails but I can only do it one at a time. Any suggestions?

  • Images being erased

    Opening a Keynote doc I get the message "some images have been erased". Weird part #1: Restoring the doc from previous versions, the one from 09:21PM for example, displays no images either. However the same document exported to PDF at 09:29PM display

  • Merge Join Occuring

    I have query whch when I do showplan ... It show merge join is happening at client place and not at mine.... Can anybody suggest as what is reason behind this merge join to occur. Merge join should not occur at any cost... It is slowing down my perfo

  • Viewing jpg removed from library - without a MAC.

    I do not currently have access to my Mac but I needed to view a few photos within an iPhoto library that had been backed up onto a CD. Unfortunately the images that I wanted in the library did not seem to be viewable. Half of the jpgs were ok but the

  • How to spool data into multiple Excel sheet if result is more then 65k rows

    Hi all, Wann spool data into multiple excel sheet bocz my resultant no of rows are more then 65k. Thanks to all in advance.....