Replace substr, instr with Reg_exp, is this possible,

Hi Team,
I have Small requirement below, i have writen Query For this but was thinking Is there Any better way Of
doing it, esp With Use To reg_exp,
i have Some code As shown below
'23456_TR_ABC_CODE12_JPM-(1)100-(1)150'
From this code i Only want portion which Is Between 'TR_' And '_CODE12' i.e. ABC,
given Is my Query And its output
Select
substr( substr('23456_TR_ABC_CODE12_JPM-(1)100-(1)150',instr('23456_TR_ABC_CODE12_JPM-(1)100-(1)150','TR_',1,1)+3),
        1,
        instr(
              substr('23456_TR_ABC_CODE12_JPM-(1)100-(1)150',instr('23456_TR_ABC_CODE12_JPM-(1)100-(1)150','TR_',1,1)+3),
              '_',1,1
              -1) "word"
From dual;
        word
1     ABC
kindly let me know If there Is Any better way Of doing it,,,

Jeneesh, in case there are several TR_ or _CODE12 in the line I'd advice to use non-greedy operators.
SQL> with t as
  2     (select '23456_TR_ABC_CODE12_JPM_(1)_100_CODE12_ASJ' word from dual)
  3     select regexp_replace(word, '.*TR_<font color="red">(.*)</font>_CODE12.*', '\1') word
  4       from t;
WORD
<font color="red">ABC_CODE12_JPM_(1)_100</font>
SQL>
It is working with (+) sign.
SQL> with t as
  2     (select '23456_TR_ABC_CODE12_JPM_(1)_100_CODE12_ASJ' word from dual)
  3     select regexp_replace(word, '.*TR_<font color="blue">(.+?)</font>_CODE12.*', '\1') word
  4       from t;
WORD
<font color="blue">ABC</font>
SQL>
But I don't understand why it is not working with (*) sign :((
SQL> with t as
  2     (select '23456_TR_ABC_CODE12_JPM_(1)_100_CODE12_ASJ' word from dual)
  3     select regexp_replace(word, '.*TR_<font color="green">(.*?)</font>_CODE12.*', '\1') word
  4       from t;
WORD
<font color="green">ABC_CODE12_JPM_(1)_100</font>Maybe someone can explain?
Several more examples:
the first and the last of them are really strange, at least for me:
SQL> with t as
  2     (select '23456_TR_ABC_CODE12_JPM_(1)_100_CODE12_ASJ' word from dual)
  3     select regexp_replace(word, '^<font color="red">.*</font>TR_<font color="red">(.*?)</font>_CODE12.*$', '\1') word
  4       from t;
WORD
<font color="red">ABC_CODE12_JPM_(1)_100</font>
SQL>
SQL> with t as
  2     (select '23456_TR_ABC_CODE12_JPM_(1)_100_CODE12_ASJ' word from dual)
  3     select regexp_replace(word, '^<font color="blue">.*?</font>TR_<font color="blue">(.*?)</font>_CODE12.*$', '\1') word
  4       from t;
WORD
<font color="blue">ABC</font>
SQL>
SQL> with t as
  2     (select '23456_TR_ABC_CODE12_JPM_(1)_100_CODE12_ASJ' word from dual)
  3     select regexp_replace(word, '^<font color="red">.*?</font>TR_<font color="red">(.*)</font>_CODE12.*$', '\1') word
  4       from t;
WORD
<font color="red">ABC</font>
SQL>

Similar Messages

  • HT5866 my screen on my 5C have crack n I need to replace the lcd screen with digitizer is this possible?

    I need to replace my crack 5C screen, any help

    If you are in the US, some Apple stores have the ability to replace a screen, some do not. If they can, the cost is only $149. If they cannot, then without Apple Care + you would need to purchase an out of warranty replacement at a cost of $269. If you do have Apple Care +. you can make 2 total exchanges over the 2 year life of Apple Care + with a $69 deductible.

  • Can I replace my table with divs, in this context?

    Hi,
    I'm trying to accomplish something without the use of tables. Maybe someone can tell me how.
    - The skeleton is basically made up of 3 newspaper-style columns.
    - Their widths aren't very likely to change -- their widths will be fixed -- so this eliminates one problem right off the bat, right?
    - The first column (left) is a sidebar menu, and it has its own distinct background image pattern.
    - The other two columns (mid and right) share a flat background. Right now, I'm just calling the same 1k JPG twice (once in each of those two columns/cells). I find this simpler than creating an unnecessary container just for the common background.
    - All 3 columns begin at the same line (0).
    So far so good, the fixed widths and the fact that they all begin at y=0 makes this easier than it otherwise could have been.
    Now here's the tricky part :
    - The amount of content is different from page to page (some pages are longer than others), and the amount of content per column will also vary individually (so the sidebar might be the longest column in one file, the mid column could be the longest element in the next, and so on...)
    - The layout is horizontally centered.
    - All 3 columns need to end at the same spot, which will be dynamic from page to page (in other words, the backgrounds of these columns need to stretch/repeat until the end of the column with the most content, whichever of the 3 columns that may be on any given page).
    - There is a page-end image to display that is as wide as the combined 3 column widths.
    As you can imagine, using a table with 3 columns makes this easy as pie. But I was told to avoid tables whenever possible, so if there's an easy way to justapose 3 divs and have them behave like 3 cells of the same table -- without too much markup -- I'd give it a try, and potentially leave tables behind for good.
    It would be easy enough to create a large container div, horizontally center it, and left-float 3 divs inside it... but this doesn't address the problem of having to have those backgrounds repeat all the way to the end of the site. The way I just described, the backgrounds would vertically end wherever the content of that individual column ends.
    And since we know divs don't like height=100%, well...
    Any help would be appreciated.
    Thanks!

    Have you tried using Faux Columns?
    http://www.alistapart.com/articles/fauxcolumns/
    or Project Seven's Equal Height Columns script?
    http://www.projectseven.com/tutorials/css/pvii_columns

  • Registering MBeans with rmiregistry - is this possible?

    I created an application which offers an MBean to allow instrumentation - so far so good. I can control it with JConsole and the standard jdk6 system settings.
    Problem is, if I have two instances of the same application or different applications which attempt to use the same com.sun.management.jmxremote.port, there will be a port conflict and the second instance won't start.
    I thought of running the standalone rmiregistry utility and registering each application with it, using the single instance of rmiregistry so that each instance won't need its own port - is this at all possible?

    Hi,
    as far as I understand it, a high number of "Total loaded" should not necessarily be a problem, as long as classes are unloaded again, i.e. the number of "currently loaded" classes remains somewhat constant.
    Taking this into account, using -Xnoclassgc should be a bad idea, because it should leave you with a growing number of classes currently loaded - which in the end will blow the permanent generation of your JVM (at least this is what was the case at one previous project).
    If the number of classes is becoming too big and the permanent generation fills up, you should be seeing OutOfMemoryErrors pointing to the permanent generation.
    I suggest you should be checking other possible causes. Have you been logging garbage collection output to check whether it is really garbage collection that causes your application to freeze at some point? Maybe it is possible to provide a little more information on the problem?
    Bye.

  • How to replace a string with asterisks? This is related to my previous post

    I guess I now need to replace the middle segment of what is retrieved with asterisks.
    So, the string in the middle '99999988' should be replaced with '********'. I am basically trying to mask the middle sement string. The length of the original string is not known but the first segment is 6 characters and 3 segment is 4 characters. The middle sement can be anywhere between 5 to 10 characters. In the example below, its 8 characters.
    Can I use REPLACE or TRANSALE functions in here ?
      select substr('456712999999881234', 1, 6) a,
             substr('456712999999881234', 7, length('456712999999881234') - 10) b,
             substr('456712999999881234', -4) c
      from      dual;Thanks

    if the middle section is entirely numbers then translate(&lt;middle_section&gt;, '1234567890', '**********')
    otherwise rpad('*', length(col)-10, '*')
    eg:
    select substr('456712999999881234', 1, 6) a,
             translate(substr('456712999999881234', 7, length('456712999999881234') - 10), '1234567890', '**********') b,
             substr('456712999999881234', -4) c
      from  dual;
    A      B        C  
    456712 ******** 1234
    select substr('456712999999881234', 1, 6) a,
             rpad('*', length('456712999999881234')-10, '*') b,
             substr('456712999999881234', -4) c
      from  dual;
    A      B        C  
    456712 ******** 1234Although thinking about it, I'd just go for the rpad version; requires less processing that using the translate version, and works for more situations (ie. even if there's characters in the middle section, rather than just numbers)
    Edited by: Boneist on 16-Jul-2009 16:54

  • I have a new ipod that I would like to share my itunes library with. Is this possible?

    Can someone help me and give me an idea as to whether or not is possible to have multiple Ipods and a shuffle share the same Itunes library on the same computer.  I attempted to drag the music on my itunes to another IPOD and it will not allow it.  Please help.  Thank you.

    Just plug the iPod in and open iTunes. It will the iPod will show in the devices section of the iTunes sidebar. Click on the iPod go to the summary tab and set you syncing options. You can do this for as many iPods/iPhones/iPads as you like.

  • Dynamic query structures with restrictions - is this possible

    Hi experts,
    We have a client that has hard coded query structures, much to our chagrin.  These structures change quarterly and because the structures are used across several queries and workbooks, I need to find a new solution that will makes the dynamic and can be updated in production.  We have investigated the use of hierarchies for this, and unfortunately this will not work.
    Also, their queries are locked down in production, so all changes must transport from Dev to QA to Production.  This setting is mandated from the parent company, so changing this is not possible.
    Question:  Is it possible to write a WebDynpro or ABAP program that will allow users to change these hard coded structures?  What tables would be used for this?   I'm hoping we can create custom tables that dynamically populate the structures of the query, but I have doubts this can be done. 
    I suspect this is a stretch, but I'm hoping somebody might have attempted this. 
    Any ideas would be appreciated.  We're proficient in BI so any suggestions would be great.
    Example structure:
    P&L Structure
    Revenue ......................(restricted on Revenue GL accounts)
    Out of Pocket Revenue.....(restricted on Out of Pocket GL accounts)
    Total Revenue...................(total of the Revenue and Out of Pocket Revenue from above)
    Best,
    Larry

    ...to put a maintainable table in front of the users can be as easy as creating a  'parameters' cube and putting an input ready query on it. Lots of other options, such as a simple custom table and a gui based form to maintain, but I've used exit variables looking up values from custom parameter cubes a great deal in planning applications.
    Another alternative may be to add a new attribute to your gl accounts to indicate the nominal reporting group, and base your variable exits or row structures on that, leaving your users simply to mainain their GL Account Mastre data as required.
    Edited by: Andrew Trousdell on Jun 18, 2010 4:07 AM

  • E220R with D1000 is this possible?

    Hi i have an E220R running SunRay 2.0 but also require it to use samba to backup ghost images to a D1000. Problem is that ive never setup a D1000 array, and have no idea how to do it...are there any walkthru's or step by step instructions on how to do this?
    Im running Solaris 9 on the box and think that I am using the correct scsi cables to connect the box to the D1000.
    How do i find out if the system has recognised the array disks?
    How do i then configure the box to use the array? preferably as a mirrored set of 4 vs 4 disks?
    All help would be appreciated

    I have an Enterprise 220R with Solaris 9 O/S, and a SunStorEdge D1000. I understand that the onboard SCSI SE is incompatible with the SCSI on the D1000, however I have a PCI dual SCSI card which is Differential installed on the 220R. Using a sun 530-2453 cable I have connected the 220R to the 1st Interface on the D1000, and then linked the other SCSI interfaces using a HPDB68M to HPDB68M cable, finally teminating it at the last interface with a terminator. It all seems to be connected correctly but the 220R refuses to recognise the D1000. I have used the devfsadm -c disks command to see if the system recognises it but with no joy. Ive looked over the docoumentation again and again but seem to be getting no where.
    Basically my configuration is:
    Enterprise220R ->- StorEdge 1st SCSI interface ->- HPDB68M cable(2nd SCSI interface) ->- HPDb68M(3rd SCSI interface) ->- SCSI Terminator.
    I also went to the OK prompt and typed in probe-scsi-all and received a BUS FAULT over and over.

  • Just starting out with extensions, is this possible?

    I have started researching the Adobe Creative Suite Extension Builder and I find that there is an overwhelming amount of information on this tool. I have an idea for extension that I want to build but I want to start by asking the community a question.
    Assuming this extension is for Flash Pro, Photoshop, or Illustrator, is it possible to obtain data from a layer that includes the positions (x,y) and dimensions (width,height) for each object in a layer?
    Gladly appreciate any help or advice you can give, thanks!

    Hey MSSDedalus,
    I looked through some of the class documentation and it seems that what I'm looking for is somewhat possible (at least using the Illustrator APIs, look at the PageItem class if interested). Would you happen to know where the documentation is for the Flash Pro CS6 API? I'm only able to find the JavaScript API for Flash Pro.
    Thanks!

  • I just purchased the Mac Mini Server with the intention of replacing Lion Server with Lion for the first hard drive while installing Windows 7 thru Bootcamp on the second hard drive. Is it possible for me to do this? Thanks.

    I just purchased the Mac Mini Server with the intention of replacing Lion Server with Lion for the first hard drive while installing Windows 7 thru Bootcamp on the second hard drive. Is it possible for me to do this? Thanks.

    I would use Parallels or VMWare and use the second drive to hold the virtual machine. That way the VM only uses the space that it needs and you can still use the remainder of the drive for other things, not to mention that you would not need to reboot to run windows.
    Also Time Machine does not back up a boot camp partition.

  • I have a Macbook Pro with OS 10.6.8 with no updates. Bundled is iPhoto 11, version 9.2.6. I would like to update my OS to 10.9.5 or later. Is this possible and which version is recommended?

    I have a MacBookPro with OS 10.6.8. It has no updates. This version contains Iphoto 11, version 9.2.3. I would like to upgrade my operating system to 10.9.5 or later. Is this possible and how best to proceed? How will this affect iPhoto?
    Thanks, Jeff

    If you have a mid/late 2007 MBP you can install the latest OSX that is available, on your MBP.  Mavericks (10.9) has been replaced by Yosemite (10.10) and is no longer available in the App store. 
    You choices are Lion (10.7), Mt.Lion (01.8) (both $20) or Yosemite (free).  The first two are available from the Apple online web site.  Yosemite can be downloaded from the App store.
    Ciao.

  • I just got my replacement phone from Warranty. The phone was on for just 2 hours and it crashed. I was told that motorola knows about this "possible" issue. I got a new sim, hard reset, If it can be done I did it. They are now sending me the same phone ag

    I just got my replacement phone from Warranty. The phone was on for just 2 hours and it crashed. I was told that motorola knows about this "possible" issue. I got a new sim, hard reset, If it can be done I did it. They are now sending me the same phone again. Number 3. I would hope this one doesn't crash but I rather have a different phone so I can enjoy using my account. The phone's most recent error was today. " Unfortunately, the process com.motorola.widget.circlewidget3d" has stopped. At least the error message works and it's polite. I told tech this and they could not answer my question or help me other then "let's do a hard reset" My warranty replacement is coming on Monday. Let's hope this one works. Anyone else havinbg the same problem. it says "such and such as stop working" on all sorts of stuff! Help! I want my iPhone Back!

    I just did a google search on this issue. OMG, I got a ton of videos on this or similar issues. Each one says in some way to clear the cache, reset the data, etc. Why in the world would this continue to happen and they not do a fix that resloves this without having to lose or stop what your doing. This is a very long and constant issue it seems with Android phones as there must have been pages and pages of what I now call "Unfortunately"  So I am going to pray that Verizon helps me  out and gets me away from this issue and helps me go back to iPhone or try the Samsung.

  • I am replacing my existing SATA hard drive to a Solid State hard drive and want to image the drive, is this possible?

    I am replacing my existing 320 GB SATA hard drive that clicks and makes weird noises to a Solid State hard drive and want to image the drive, is this possible?  I then want to replace the DVD with a secondary large drive for storage.
    So I am looking for any "gotchas" that I may be unaware of.
    Thanks!

    Put the Old drive in an external notebook drive enclosure. Install the SSD in your computer. Boot from your Old drive's Recovery HD:
    Boot to the Recovery HD:
    Restart the computer and after the chime press and hold down the COMMAND and R keys until the menu screen appears. Alternatively, restart the computer and after the chime press and hold down the OPTION key until the boot manager screen appears. Select the Recovery HD and click on the downward pointing arrow button.
    Clone Lion/Mountain Lion using Restore Option of Disk Utility
         1. Select Disk Utility from the main menu then press the Continue
             button.
         2. Select the destination volume from the left side list.
         3. Click on the Restore tab in the DU main window.
         4. Select the destination volume from the left side list and drag it
             to the Destination entry field.
         5. Select the source volume from the left side list and drag it to
             the Source entry field.
         6. Double-check you got it right, then click on the Restore button.
    Destination means the New SSD. Source means the external Old hard drive.
    Set the new Startup Disk to the SSD and restart the computer.
    This process clones both your old OS X volume and the Recovery HD volume to the SSD. You can use a similar process to clone the SSD to the new hard drive you will install.

  • I want to place an image in my InDesign document that can work with an address like this (\Resources\Thumb) rather than this (C:\Users\JSmith\Desktop\InDesign thumbnail Test\001\Resources\Thumb) is this possible?

    I want to place an image in my InDesign document that can work with an address like this (\Resources\Thumb) rather than this (C:\Users\JSmith\Desktop\InDesign thumbnail Test\001\Resources\Thumb) is this possible? In a nutshell I want to point the link to an image in a directory that uses just part of the address.

    I know this is something you can do in Maya with linked files. I guess InDesign just isn't there yet.
    MW Design -  Yeah I think "Relative paths" is the right term! I want to create a Layout with an image in the center of the page - and then duplicate my folder structure with that file. With that, I want to replace the Linked image file with a diferent image file of the same name. In effect having multiple files of the same layout with different images.  I hope that made sense.  

  • Is this possible with LOG ERRORS?

    I have a procedure which does a bulk insert/update operation using MERGE (running on Oracle 10gR2). We want to silently log any failed inserts/updates but not rollback the entire batch no matter how many inserts fail. So I am logging the exceptions via LOG ERRORS REJECT LIMIT UNLIMITED. This works fine actually.
    The one other aspect is the procedure is being called from Java and although we want any and all good data to be committed, regardless of how many rows have bad data, we still want to notify the Java front end that not all records were inserted properly. Even something such as '150 rows were not processed.' So I am wondering if there is anyway to still run the entire batch, log the errors, but still raise an error from the stored procedure.
    Here is the working code:
    CREATE TABLE merge_table
        t_id     NUMBER(9,0),
        t_desc   VARCHAR2(100) NOT NULL
    CREATE OR REPLACE TYPE merge_type IS OBJECT
        type_id     NUMBER(9,0),
        type_desc   VARCHAR2(100)
    CREATE OR REPLACE TYPE merge_list IS TABLE OF merge_type;
    -- Create Error Log.
    BEGIN
        DBMS_ERRLOG.CREATE_ERROR_LOG(  
            dml_table_name      => 'MERGE_TABLE',
            err_log_table_name  => 'MERGE_TABLE_ERROR_LOG',     
    END;
    CREATE OR REPLACE PROCEDURE my_merge_proc_bulk(p_records IN merge_list)
    AS
    BEGIN
        MERGE INTO merge_table MT
        USING
            SELECT
                type_id,
                type_desc
            FROM TABLE(p_records)
        ) R           
        ON
            MT.t_id = R.type_id
        WHEN MATCHED THEN UPDATE
        SET
             MT.t_desc = R.type_desc
        WHEN NOT MATCHED THEN INSERT
            MT.t_id,
            MT.t_desc
        VALUES
            R.type_id,
            R.type_desc
        LOG ERRORS INTO MERGE_TABLE_ERROR_LOG ('MERGE') REJECT LIMIT UNLIMITED;
        COMMIT;
    END;
    -- test script to execute procedure
    DECLARE
        l_list       merge_list := merge_list();
        l_size       NUMBER;
        l_start_time NUMBER;
        l_end_time   NUMBER;
    BEGIN
        l_size := 10000;
        DBMS_OUTPUT.PUT_LINE('Row size: ' || l_size || CHR(10));
        l_list.EXTEND(l_size);
        -- Create some test data.
        FOR i IN 1 .. l_size
        LOOP
            l_list(i) := merge_type(i,'desc ' || TO_CHAR(i));
        END LOOP;
        EXECUTE IMMEDIATE 'TRUNCATE TABLE MERGE_TABLE';
        EXECUTE IMMEDIATE 'TRUNCATE TABLE MERGE_TABLE_ERROR_LOG';
        -- Modify some records to simulate bad data/nulls not allowed for desc field  
        l_list(10).type_desc := NULL;
        l_list(11).type_desc := NULL;
        l_list(12).type_desc := NULL;
        l_list(13).type_desc := NULL;
        l_list(14).type_desc := NULL;
        l_start_time := DBMS_UTILITY.GET_TIME;   
        my_merge_proc_bulk(p_records => l_list);
        l_end_time := DBMS_UTILITY.GET_TIME;
        DBMS_OUTPUT.PUT_LINE('Bulk time: ' || TO_CHAR((l_end_time - l_start_time)/100) || ' sec. ' || CHR(10));
    END;
    /I tried this at the end of the procedure, but it does not work, probably because I am not using SAVE EXCEPTIONS:
        IF (SQL%BULK_EXCEPTIONS.COUNT > 0) THEN
            RAISE_APPLICATION_ERROR(-20105, SQL%BULK_EXCEPTIONS.COUNT || ' rows failed for the batch.' );
        END IF;Also the one thing we would like to have is the datetime logged for each failure in the ERROR_LOG table. We may be running several different batches over night. Is this possible to manipulate the table to add this?
    Name                              Null?    Type
    ORA_ERR_NUMBER$                            NUMBER
    ORA_ERR_MESG$                              VARCHAR2(2000)
    ORA_ERR_ROWID$                             ROWID
    ORA_ERR_OPTYP$                             VARCHAR2(2)
    ORA_ERR_TAG$                               VARCHAR2(2000)
    CHANNEL_ID                                 VARCHAR2(4000)
    CHANNEL_DESC                               VARCHAR2(4000)
    CHANNEL_CLASS                              VARCHAR2(4000)Edited by: donovan7800 on Feb 16, 2012 1:14 PM
    Edited by: donovan7800 on Feb 16, 2012 1:17 PM

    Ah yes I remember. The guy needing the TABLE(p_records).
    Re: Merge possible from nested table?
    >
    I tried this at the end of the procedure, but it does not work, probably because I am not using SAVE EXCEPTIONS:
    IF (SQL%BULK_EXCEPTIONS.COUNT > 0) THEN
    RAISE_APPLICATION_ERROR(-20105, SQL%BULK_EXCEPTIONS.COUNT || ' rows failed for the batch.' );
    END IF;
    >
    Correct - you need to use SAVE EXCEPTIONS.
    I know there is the FORALL command, but I figured there was a way to do this with MERGE since the procedure does an update if a match is found instead
    But you can use MERGE with FORALL and add the SAVE EXCEPTIONS to handle your problem.
    I still have a question as to what the source of the PL/SQL table provided by the parameter Is this table being prepared in another PL/SQL procedure, in Java, or how? Are you confident that the number of rows in the table will be small enough to avoid a memory issue?
    If in PL/SQL you could pass a ref cursor and then in this proc use a LOOP with a 'BULK COLLECT into' with a LIMIT clause to do the processing.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

Maybe you are looking for

  • Account limitations

    Okay so here is my story. A couple months ago I needed a paypal account so my mom created one. She put down my name but used her age so it was already confusing and kinda messed up. I was unaware that she put that in and one day I needed to transfer

  • EMBED URL link in Illustrator

    I found that many people are searching a way to add an URL link to a .AI file that works after exporting to PDF. The only way seems to place a text field with the complete URL (for ex.  a youtube link: http://www.youtube.com/watch?v=3c7-EPNTnPI). In

  • "Detect Cuts" not really working

    I'm scoring a scene that has very tight and deliberate cuts. To move things along, I brought the video directly in Logic (usually on a seperate PT rig) and I selected the "detect cuts" button in the Video global track, with plans to then play with "b

  • Returns in MTO process

    Hai guru,s In MTO process When I am doing Returns Delivery..System showing error like 1.'   0'  EA quantity material available. 2.   Enter Delivery quantity greater than 0. From Returns order Quantity also not copying into Return Delivery. why its ha

  • How the Material costs and Overheads flow from Logistics to COPA

    Hi, I know that Revenue will flow to COPA from SD Condition types which we assigned to value fields in KE4I. But i am not clear how the Material cost will flow to COPA? How the Overheads will flow to COPA? Kindly help me in understanding the flow...