How to add the delete statement in this procedure.

I got a string from user e.g. ‘1,2,3’ and userid =14 from user;
I wrote a procedure that will insert the record as follows;
Userid newsletterid
14     1
14 2
14 3
The procedure is
CREATE OR REPLACE PROCEDURE usersubscription_procd (vuserid in number, vnewsletterid IN VARCHAR2)
AS
I NUMBER;
J NUMBER;
VAL VARCHAR2(100);
BEGIN
     I := 1;
     J := 1;
     WHILE INSTR(vnewsletterid,',',I) != 0 LOOP
     VAL := SUBSTR(vnewsletterid,I,INSTR(vnewsletterid,',',I)-J);
     I := INSTR(vnewsletterid,',',I)+1;
     J := I;
     INSERT INTO usersubscription (usersubcriptionid,userid,newsletterid)
     VALUES (usersubscription_seq.nextval,vuserid,VAL);
     END LOOP;
     VAL := SUBSTR(vnewsletterid,I,LENGTH(vnewsletterid));
     INSERT INTO usersubscription (usersubcriptionid,userid,newsletterid)
     VALUES (usersubscription_seq.nextval,vuserid,VAL);
END;
Now one requirement is that
When next string comes like ‘1,4’ for same user
Then I want to delete the 2 and 3 and insert the 4 .
Please tell me solution.

Hi,
Try to delete all record from ther current user :
CREATE OR REPLACE PROCEDURE usersubscription_procd (vuserid in number, vnewsletterid IN VARCHAR2)
AS
I NUMBER;
J NUMBER;
VAL VARCHAR2(100);
BEGIN
     begin
          delete usersubscription where userid = vuserid;
     exception when others then null;
     end;
     I := 1;
     J := 1;
     WHILE INSTR(vnewsletterid,',',I) != 0 LOOP
          VAL := SUBSTR(vnewsletterid,I,INSTR(vnewsletterid,',',I)-J);
          I := INSTR(vnewsletterid,',',I)+1;
          J := I;
          INSERT INTO usersubscription (usersubcriptionid,userid,newsletterid)
          VALUES (usersubscription_seq.nextval,vuserid,VAL);
     END LOOP;
     VAL := SUBSTR(vnewsletterid,I,LENGTH(vnewsletterid));
     INSERT INTO usersubscription (usersubcriptionid,userid,newsletterid)
     VALUES (usersubscription_seq.nextval,vuserid,VAL);
END;
/Nicolas.

Similar Messages

  • How to add the update statement in this procedure?

    I have one table usersubscription (userid,newsletterid,deleted)
    I got one string from user e.g. ('1,2,3') and userid = 14
    I wrote proceduer that will insert this records in to usersubscription table;
    userid     newsletterid     deleted
    14     1          n
    14     2          n
    14     3          n
    default value of deleted column is 'n'.
    my procedure is as follows;
    CREATE OR REPLACE PROCEDURE usersubscription_procd1 (vuserid in number, vnewsletterid IN VARCHAR2)
    AS
    I NUMBER;
    J NUMBER;
    VAL VARCHAR2(100);
    BEGIN
         I := 1;
         J := 1;
         WHILE INSTR(vnewsletterid,',',I) != 0 LOOP
         VAL := SUBSTR(vnewsletterid,I,INSTR(vnewsletterid,',',I)-J);
         I := INSTR(vnewsletterid,',',I)+1;
         J := I;
         INSERT INTO usersubscription (usersubcriptionid,userid,newsletterid)
         VALUES (usersubscription_seq.nextval,vuserid,VAL);
         END LOOP;
         VAL := SUBSTR(vnewsletterid,I,LENGTH(vnewsletterid));
         INSERT INTO usersubscription (usersubcriptionid,userid,newsletterid)
         VALUES (usersubscription_seq.nextval,vuserid,VAL);
    END;
    Now one requirement is that when new string comes for same userid e.g.('1,4,5') userid = 14
    then the deleted column for 1 and 2 newsletterid changes to 'y';
    please tell me the solution.
    Prathamesh.

    Hi,
    Before your loop, you can make something else like :
    SQL> select * from test;
        USERID NEWSLETTERID D
            14            1 n
            14            2 n
            14            3 n
    SQL> update test
      2  set deleted = 'y'
      3  where instr('1,4,5',newsletterid,1) = 0
      4  and userid = 14;
    2 ligne(s) mise(s) à jour.
    SQL> select * from test;
        USERID NEWSLETTERID D
            14            1 n
            14            2 y
            14            3 y
    SQL> HTH,
    Nicolas.

  • How to add the delete button

    Hello Guru's and Experts.
    I am working on a change request , the change request is as follows
    Once a cost simulation is run for a maintenance item and the data transferred to BI, it cannot be deleted from BI, only overwritten with an updated cost simulation. In the instance where the such items are no longer required to be included in the simulation, it must be made possible to delete the simulation costs in BI.
    The current design in my project significantly increases the effort required to identify unwanted cost simulations and greatly increases the potential for incorrect data to be used in Budgeting and forecasting.
    My question is how to add the delete functionality in the report. is it acheavable through the portal or WAD,
    iam new to SAP BI , if possible can anyone kindly suggest me the steps to do this functionality.
    Appreciate your quick response..
    Thanks
    Ravi.

    Hi Guru
    Thanks for your valuable information.
    We got the requirment changed now from the users , the delete button should display in the report, i mean in protal, Now the user wants to delete with the selection criteria, for example, once the user hits the row in the report, that means if he selects the Main work center, and selects the delete button , he wants all the data related to that main work center to be deleted.  and another senario is what ever row the user selects  the characteristics in the row, for example, if the user select  for any row, i mean it can be any cost center or fiscal year, maintaiance item, cost elements, ..etc.  
    Once the user  selects the row and hit the delete button,  and he wants to hit the save save button in the report to make sure it deleted, the other way around , if the dont want to hit save, then he wants the data to be in the report.
    In the above  scenario's  can  you please suggest me with the steps how can we acheive it.
    Please reply back if you need any other info., Apprieciate your quick response. its very urgent requirment which we have to start...
    sorry to bother u..
    Thanks
    Ravi.

  • How to add the Assignment column on this post outgoing payment in f-53

    Hi all,
    how to add the Assignment column on this post outgoing payment in f-53?
    thanks.
    Joo

    Hi ,
    If you want to see the assignment column in f-53 process open item screen
    1. First in O7V3 check for t.code FBz2 which line layout ( 2 digit code is assigned)
    2. Then in t.code O7z4s check in the line layout and if assignment field is not there then insert the field.
    then check in F-53.
    Hopw it will solve your problem.
    Assign points if useful
    Regards
    Prabhat

  • How to add the entries and how to delete the entries from custom Z-table?

    Hi Experts,
    My requirement is I need to add the entries from program to three custom z-tables . Assume as zabc1,zabc2,zabc3.
    Here how to add the entries from program to Z-table.???
    And one more requirement is I want to provide a deletion checkbox in selection screen . Initial it was unchecked. If I am giving tick mark then the entries should be deleted from above custom Z-tables. this all will done in backgroung job?
    Could you please guide me the logic how to crack this???
    Let me know if you need more Info
    Thanks
    Sanju

    Hi Sanjana,
    What you can do is to use the ABAP keyword INSERT or MODIFY to add or modify records to a given database table. Here are the syntax taken from SAP documentation:
    *Insert Statement
    INSERT dbtab
    Syntax
    INSERT { {INTO target VALUES source }
           | {     target FROM   source } }.
    Effect
    The INSERT statement inserts one or more rows specified in source in the database table specified in target. The two variants with INTO and VALUES or without INTO with FROM behave identically, with the exception that you cannot specify any internal tables in source after VALUES.
    System Fields
    The INSERT statement sets the values of the system fields sy-subrc and sy-dbcnt.
    sy-subrc Meaning
    0 At least one row was inserted.
    4 At least one row could not be inserted, because the database table already contains a row with the same primary key or a unique secondary index.
    The INSERT statement sets sy-dbcnt to the number of rows inserted.
    Note
    The inserted rows are finally included in the table in the next database commit. Up until this point, they can still be removed by a database rollback.
    *Modify Statement
    MODIFY dbtab
    Syntax
    MODIFY target FROM source.
    Effect
    The MODIFY statement inserts one or several lines specified in source in the database table specified in target, or overwrites existing lines.
    System fields
    The MODIFY statement sets the values of the sy-subrc and sy-dbcnt system fields.
    sy-subrc Meaning
    0 At least one line is inserted or changed.
    4 At least one line could not be processed since there is already a line with the same unique name secondary index in the database table.
    The MODIFY statement sets sy-dbcnt to the number of processed lines.
    Note
    The changes are transferred finally to the database table with the next database commit. Up to that point, they can be reversed using a database rollback.
    Hope it helps...
    P.S. Please award points if it helps...

  • The DELETE statement conflicted with the REFERENCE constraint "FK_Equipment_Assets". The conflict occurred in database "WorkOrderSystem", table "dbo.Equipment", column 'AssetCode'........can someone give me a solution for this Error.

    The DELETE statement conflicted with the REFERENCE constraint "FK_Equipment_Assets". The conflict occurred in database "WorkOrderSystem", table "dbo.Equipment", column 'AssetCode'

    ya that's true row is referenced by another table.....but i want the row to referred by another table ,I don't know how to fix it
    Actually this is not a C# issue. It is a T-SQl issue.
    https://social.msdn.microsoft.com/Forums/sqlserver/en-US/home?forum=transactsql
    The above link should be posted.
    Per my understanding, first you should
    delete the record from the Foreign Table and then after you have to delete the record from the Primary Key table
    Hope it helps you.
    Best regards,
    Kristin
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Hi, I use two email addresses within one account with gmx.  I created one account with the first email address now. How do I add the second one to this account? Now it looks like this. One account was opened with address A. I receive in this account email

    Hi, I use two email addresses within one account with gmx.
    I created one account with the first email address now. How do I add the second one to this account?
    Now it looks like this.
    One account was opened with address A.
    I receive in this account emails for address A and B.
    But I can only write and answer with address A.

    Hi Rudegar,
    Sorry for my late reply.
    It s not the amount of accounts I'm struggling with.
    When I create now for both email addresses one account, then I receive the same emails two times.
    That is not what I want.
    Because on gmx the two email addresses have the same inbox and outbox.
    E.g. I can login to my gmx account either with email A or B. It doesn't matter.
    Now I want to have the same on my ipad.
    One account with both email addresses.

  • Hello, I would like to know how to add or delete single cell in numbers.

    Hello, I would like to know how to add or delete single cell in numbers.

    If by delete you really mean clear the contents of a cell, then just click once on the cell and hit the 'delete' button.
    Before:
    After hitting delete button:
    In some circumstances you can actually delete one cell.
    For example here, I make this choice:
    Resulting in this:
    So it's not strictly true that Numbers does not delete one cell, ever.  It can if you have a one-column table. 
    So never say never or not ever! Enough pedantry for today!
    SG

  • How to get the previous state of my data after issuing coomit method

    How to get the previous state of some date after issuing commit method in entity bean (It should not use any offline storage )

    >
    Is there any way to get the state apart from using
    offline storage ?As I said the caller keeps a copy in memory.
    Naturally if it is no longer in memory then that is a problem.
    >
    and also what do you mean by auditlog?
    You keep track of every change to the database by keeping the old data. There are three ways:
    1. Each table has a version number/delete flag for each record. A record is never updated nor deleted. Instead a new record is created with a new version number and with the new data.
    2. Each table has a duplicate table which has all of the same columns. When the first table is modified the old data is moved to the duplicate table.
    3. A single table is used which has columns for 'table', 'field', 'data' and 'activity' (update, delete). When a change is made in any table then this table is updated. This is generally of limited useability due to the difficulty in recovering the data.
    All of the above can have a user id, timestamp, and/or additional information which is relevant to the data being changed.
    Note that ALL of this is persisted storage.
    I am not sure what this really has to do with "offline storage" unless you are using that term to refer to backed up data which is not readily available.

  • HT3986 Does anyone know how to enable the "Delete" key for logging on the Windows 7 partition on the latest iMac, via the latest Apple wireless keyboard? Many Thanks

    Hi All
    Does anyone know how to enable the "Delete" key for logging on the Windows 7 partition on the latest iMac, via the latest Apple wireless keyboard - the standard wired apple keyboard works fine via this key but not the new wireless keyboard?
    Many Thanks

    Holy crap, this fixes the issue.  At least temporarily it has.  I should add that my issue was single finger forward/back swipe stopped working on the magic mouse in Firefox since Mavericks came along.  I have been fighting this since I upgraded to Mavericks a few months ago.  Thank you, tbirdvet.  You have no idea how much easier you just made using my iMac again.
    Message was edited by: wadems

  • SSRS 2008 Work order report , in sub total donot want to add the 0 level in ( how to add the expression )

    working in Work order report, this report has different level , for example
    0 level transaction
    1 level transaction
    in subtotal don't want to add 0 level transaction,
    when I did the sub total it added all the level , so in sub total amount double up because of that
    how to add the expression so I can the level 0 take out from sub total , so it does not include in sub total
    can some one please help me with this
    thanks in advance

    Hi Simon_ Hou
    I tried the expr the way you suggested , it did not work  getting  error message,  the exp I added is below
    this the expression I added on sub total where is highlighted in Yellow,  under Cost amount column,
    I really appreciate the help
    =Sum(IIF(Fields!COLLECTREFLEVEL.Value=
    "0",0,Fields!CostAMOUNT.Value),"DataSet1")
    please see below my QUERY, can you please help and let me know what I did wrong in my exp
    SELECT        PRODTABLE.PRODID, PRODCALCTRANS.COSTGROUPID, PRODTABLE.QTYCALC, PRODTABLE.PRODSTATUS, PRODCALCTRANS.COSTAMOUNT,
                             PRODCALCTRANS.COSTMARKUP, PRODCALCTRANS.REALCOSTAMOUNT, PRODCALCTRANS.CALCTYPE, PRODTABLE.DATAAREAID, PRODCALCTRANS.KEY3,
                             PRODCALCTRANS.CONSUMPVARIABLE, PRODCALCTRANS.REALCONSUMP, PRODTABLE.ITEMID, PRODTABLE.SCHEDDATE, PRODTABLE.FINISHEDDATE,
                             PRODCALCTRANS.KEY1, PRODCALCTRANS.TRANSDATE, PRODCALCTRANS.QTY, PRODCALCTRANS.KEY2, PRODCALCTRANS.COLLECTREFLEVEL,
                             PRODCALCTRANS.LINENUM
    FROM            PRODTABLE INNER JOIN
                             PRODCALCTRANS ON PRODTABLE.PRODID = PRODCALCTRANS.PRODID AND PRODTABLE.DATAAREAID = PRODCALCTRANS.DATAAREAID
    WHERE        (PRODTABLE.PRODSTATUS = 7) AND (PRODTABLE.DATAAREAID = N'AR1') AND (PRODTABLE.ITEMID = @itemid) AND
                             (PRODTABLE.FINISHEDDATE >= @Paramfromdate) AND (PRODTABLE.FINISHEDDATE <= @Paramtodate)

  • How to add the property file..ie(default.properties) to a webdynpro project

    Hi All,
    How to add the property file..ie(default.properties) to a webdynpro project.
    I urgently require the solution. Kindly get it for me.
    Regards
    DK

    Hi DK,
    this is described in the second Web Dynpro Java Tutorial
    <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/downloaditem?rid=/library/uuid/b1a3e990-0201-0010-aeb2-a2ef5bc3da8e">creating an Extended Web Dynpro Application</a>
    Regards, Bertram

  • How to add the double headings in Alv Report.

    Hi All,
    Plz suggest me how to add the double headings in ALv Report.
    Ram

    Hi,
    Try out this program....
    REPORT  ypm_historycard_rep.
    TYPE-POOLS : slis.
    DATA : it_cbm TYPE STANDARD TABLE OF mara.
    DATA : it_layout TYPE STANDARD TABLE OF slis_layout_alv WITH HEADER LINE,
           wa_fcat TYPE slis_fieldcat_alv,
           it_fcat TYPE slis_t_fieldcat_alv.
    START-OF-SELECTION.
      SELECT  *
      FROM  mara
      INTO CORRESPONDING FIELDS OF TABLE  it_cbm
      where matnr = 'D80K7'.
    END-OF-SELECTION.
      it_layout-zebra = 'X'.
      it_layout-colwidth_optimize = 'X'.
      it_layout-f2code = '&ETA'.
      APPEND it_layout.
      DEFINE macro4fcat.
        wa_fcat-col_pos = &1.
        wa_fcat-fieldname = &2.
        wa_fcat-tabname = &3.
        wa_fcat-seltext_l = &4.
        append wa_fcat to it_fcat.
        clear wa_fcat.
      END-OF-DEFINITION.
      macro4fcat    '1'  'MATNR'         'IT_CBM'   'MATERIAL NO'    .
      DESCRIBE TABLE it_cbm.
      IF sy-ucomm = '&F03'.
        MESSAGE 'hi hello good morning "press enter button" this is quiz' TYPE 'S'.
      ENDIF.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
      EXPORTING
      i_callback_program                = sy-repid
    i_callback_html_top_of_page       = 'HTML_TOP_OF_PAGE'
      is_layout                         = it_layout
      it_fieldcat                       = it_fcat
       i_save                            = 'A'
      TABLES
      t_outtab                          = it_cbm
      EXCEPTIONS
      program_error                     = 1
      OTHERS                            = 2
      IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    *&      Form  html_top_of_page
    *       text
    *      -->TOP        text
    FORM html_top_of_page USING top TYPE REF TO cl_dd_document.
      DATA: l_text(255) TYPE c.
      DATA: text1(255)  TYPE c.
      DATA: t_header TYPE REF TO cl_dd_table_element ,
            wa_header TYPE REF TO cl_dd_table_area.
      CALL METHOD top->add_gap
        EXPORTING
          width = 10.
      CALL METHOD top->add_text
      EXPORTING
        text          = 'hello'
        sap_style     = 'HEADING'
    CALL METHOD top->add_gap
        EXPORTING
          width = 20.
      CALL METHOD top->add_text
      EXPORTING
        text          = 'HOW ARE YOU'
        sap_style     = 'HEADING'.
        CALL METHOD TOP->new_line
    *      EXPORTING
    *        repeat =
        CALL METHOD top->add_gap
        EXPORTING
          width = 50.
      CALL METHOD top->add_text
      EXPORTING
        text          = '____________________________________________________________'
        sap_style     = 'HEADING'.
        CALL METHOD TOP->new_line
    *      EXPORTING
    *        repeat =
        CALL METHOD top->add_gap
        EXPORTING
          width = 90.
      CALL METHOD top->add_text
      EXPORTING
        text          = 'YOU CAN TRY LIKE THIS'
        sap_style     = 'HEADING'.
    ENDFORM.                    "html_top_of_page
    Regards
    Debarshi

  • How to add the Note board web part to a page with powershell

    Hi everyone,
    I've been looking around everywhere but haven't seen it explicitly mentioned. 
    Does anyone know how to add the Note Board web part to a Team Site page, e.g. Non-publishing site, Left Zone, First webpart in the zone in powershell?
    Examples like this one http://adicodes.com/adding-web-part-to-page-with-powershell/ only talk about custom web parts uploaded from a local drive.
    The example here looks good - http://spcrew.com/blogs/lists/posts/post.aspx?id=21 but is it for the Page Viewer Web Part. How would you go about getting the correct name for the note board web part and configuring it? 
    Many Thanks,
    Ashley
    function main(){
    [void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint")
    $url = "http://sp2010dev1/sites/test1"
    $OpenWeb = Get-SPWeb $url
    $OpenWeb
    $OpenSite = Get-SPSite $url
    $file = $OpenWeb.GetFile("http://sp2010dev1/sites/test1/SitePages/test1.aspx")
    $WebPartManager = $file.GetLimitedWebPartManager([System.Web.UI.WebControls.WebParts.PersonalizationScope]::Shared)
    Add-PageViewerWebPart "http://sp2010dev1/sites/test1" "http://sp2010dev1/sites/test1/SitePages/test1.aspx" "Body" 0 "SPCrew Site" "sp2010dev"
    $OpenWeb.Dispose()
    function Add-PageViewerWebPart($SiteURL, $pageUrl, $webpartzone, $index, $title, $content)
        $site = new-object Microsoft.SharePoint.SPSite($SiteURL)
        $web=$site.OpenWeb()
        $webpartmanager=$web.GetLimitedWebPartManager($pageUrl, [System.Web.UI.WebControls.WebParts.PersonalizationScope]::Shared)
        $webpart = new-object Microsoft.SharePoint.WebPartPages.PageViewerWebPart
        $webpart.ChromeType = [System.Web.UI.WebControls.WebParts.PartChromeType]::TitleOnly;
        $webpart.Title = $title
        $webpart.ContentLink = "http://www.spcrew.com";
        $webpartmanager.AddWebPart($webpart, $webpartzone, $index);    
        $web.Close()
        $site.Close()
    function Get-SPSite([string]$url) {
        New-Object Microsoft.SharePoint.SPSite($url)
    function Get-SPWeb([string]$url) {
        $SPSite = Get-SPSite $url
        return $SPSite.OpenWeb()
        $SPSite.Dispose()

    Hi,
    According to your post, my understanding is that you wanted to add the Note board web part to a page with PowerShell.
    The name of the Note Board web part is SocialCommentWebPart.
    I recommend to use the powershell code below:
    $pageUrl="http://sitename/SitePages/test.aspx"
    $SiteURL="http://sitename"
    $site = new-object Microsoft.SharePoint.SPSite($SiteURL)
    $web=$site.OpenWeb()
    $webpartmanager=$web.GetLimitedWebPartManager($pageUrl, [System.Web.UI.WebControls.WebParts.PersonalizationScope]::Shared)
    $webpart = new-object Microsoft.SharePoint.Portal.WebControls.SocialCommentWebPart
    $webpart.title="Note Board"
    $webpartmanager.AddWebPart($webpart, "MiddleZone", 0);
    $web.Close()
    Then the Note board web part will be added to the page.
    Best Regards,
    Linda Li
    Linda Li
    TechNet Community Support

  • How to consolidate the financial statements for 3 company codes, assigned t

    Hi Friends,
    How to consolidate the financial statements for 3 company codes, assigned to 3 different companies, 3 different fiscal years, 3 different controlling areas and all the 3 Company Codes assigned to same chart of accounts in the same client?
    Can we need any ABAP program for this (or) Is it possible using Report Painter?
    Please help me.
    Thanks

    Hi friend,
    Is it a real-time situation or something you are visualising ?
    For consolidation, you can use a group chart of accounts and select that in the operative chart of accounts for consolidation purposes.  This would work provided the company codes use the same operative chart of accounts and fiscal year.
    I hope the above would be helpful to you.
    Regards,

Maybe you are looking for

  • Report from PL/SQL

    Hi guys, I'm using BI Publisher - a tool for generating reports using SQL queries - to create some reports. Since I'm not an expert in SQL I'm here to ask for some help. I have a table which maps products to packages. For example, suppose that "Packa

  • How can I get my iPhone 4 to Calibrate in the Nike/ipod App?

    I have tried the direction from my phone by walking to calibrate, powered my phone off, did a full reboot and so far nothing has worked for me - called Apple and they want me to bring my phone in for service and buy an Apple Care plan but I am ona fi

  • Shared Laserjet 2300d slows pc down

    I have an hp laserjet 2300d printer connected to a windows xp(32bit) pc and shared to allow another windows xp pc to connect to the printer. No matter how i have the second pc connect to the printer (i.e as a network printer or configure a local port

  • Calling program

    Dear Experts,      I have a requirements explained below.     I have writen a Z program with the selection screen,  i need to execute the standard program RIMHIO00 (grid report)from Z Program by passing values to the selection screen of standard prog

  • Integration BPC-BW: BPC Dimensions = CHAR 20

    Hi, When creating BPC dimensions, by default they are created as CHAR 20 info objects. This could give problems when loading from a BPC cube to a BW cube having info-objects with less number of characters ... - I presume this cannot be changed (but c