How to delete a table maintainance generator from a table ?

Hi all ,
I' ve created a table maintainance generator for  a table now i ve added some key field to it hence i want to recreate a table maintainance generator for that
but while creating it again a message is showing" function group cannot be editable "
and the previous screen is appearing
already i ve tried to delete but same message is coming ...(from menu bar)
pls solve the issue...
Regards
Sachhi

solved......
Edited by: Sachhidananda Tripathy on Mar 2, 2009 8:40 AM

Similar Messages

  • How to delete master data of materials from sap tables

    how to delete master data of materials from sap tables...its needed now.
    i know its not recommended but still we need to do this. give me the best possible approach.
    regards,
    suneetha

    Hi,
    I would suggest you not to write your own code to delete the entries.
    BAPI_MATERIAL_DELETE, this would mark all materials selected for deletion. But still the material would exist in SAP.
    Another solution: Delete a material manually and in another session execute the transaction SM04. This would display the tables which get locked when you do the operation, Then you can write your own code to delete the material numbers from all the related tables.
    Regards
    Subramanian

  • How to delete the fist 10 recods from a table ? The problem is real.

    Hi,
    the code below shows that deleting a records using a cursor works well, if your table is out of a environment, but if you are using a environment the things goes different. Please help me, what i am doing wrong ?
    This code is the most clean code i now to do.
    // THE CODE (BEGIN).
    // BDBTEST.cpp : Clean code.
    #include "X:\include\berkeleydb\db_cxx.h"
    #define DWORD               unsigned long int
    #define UINT               unsigned int
    #define DB_ENV_PATH          "Z:\\Test"
    #define DB_FULL_NAME     "Z:\\Test\\Test.db"
    typedef     struct STRTEST
         DWORD     dwID;
         char     caTxt[64];
    } strTest;
    //     Functions.
    int          compare_int     (     Db               *dbp,
                                  const Dbt     *a,
                                  const Dbt     *b);
    void     Save();
    void     Load();
    void     DeleteAll();
    //     Global variables.
    DbEnv     *g_penvDbEnv;
    Db          *g_pdbTest;
    Dbc          *g_pdbcCursor;
    Dbt          g_dbtTestKey;
    Dbt          g_dbtTestData;
    UINT     g_ui32ENVOpenFlags;
    char     g_caError[256];
    int          g_iResult;
    //     Main function.
    int main(int argc, char* argv[])
         g_penvDbEnv     =     NULL;
         g_pdbTest     =     NULL;
         //     First we run without environment (NO ERROR USING g_pdbcCursor->Del(0)).
         remove(DB_FULL_NAME);
         Save();
         Load();
         DeleteAll();
         Load();
         //     Now we run with environment ("Dbc::del: Invalid argument" (err_ = 22) - ERROR USING g_pdbcCursor->Del(0)).
         try
              g_penvDbEnv     =     new     DbEnv(0);
              if(g_penvDbEnv == NULL)
                   return 0;
         catch(DbException &e)
              sprintf(g_caError, "ERRO -> DSDBBD: %s\n", e.what());
              return 0;
         // Set the normal flags for a transactional subsystem. Note that
         // we DO NOT specify DB_RECOVER.
         g_ui32ENVOpenFlags     =     DB_CREATE          |     // If the environment does not exist, create it.
                                       DB_INIT_LOCK     |     // Initialize locking.
                                       DB_INIT_LOG          |     // Initialize logging.
                                       DB_INIT_MPOOL     |     // Initialize the cache.
                                       DB_THREAD          |     // Free-thread the env handle.
                                       DB_INIT_TXN;          // Initialize transactions.
         //     Open/Create environment.
         try
              //     Environment settings.
              g_iResult     =     g_penvDbEnv->set_encrypt("1234", DB_ENCRYPT_AES);
              g_iResult     =     g_penvDbEnv->set_lg_bsize     (1024 * 256);                    //     LOG MEMORY FILE MAX SIZE.
              g_iResult     =     g_penvDbEnv->set_cachesize(0, 1024 * 512, 0);
              g_iResult     =     g_penvDbEnv->set_flags     (DB_AUTO_COMMIT,     1);
              g_iResult     =     g_penvDbEnv->set_flags     (DB_LOG_AUTOREMOVE,     1);
              g_iResult     =     g_penvDbEnv->set_lg_max     (1025 * 1024);                    //     LOG FILE MAX SIZE.
              // Open the environment with full transactional support.
              g_iResult     =     g_penvDbEnv->open(DB_ENV_PATH, g_ui32ENVOpenFlags, 0);
         catch(DbException &e)
              sprintf(g_caError, "ERRO -> DSDBBD: %s\n", e.what());
              return 0;
         remove(DB_FULL_NAME);
         Save();
         Load();
         DeleteAll();     //     Error goes here.
         Load();
         g_penvDbEnv->close(0);
         delete     g_penvDbEnv;
         g_penvDbEnv     =     NULL;
         return 0;
    void     Save()
         int          i;
         int          iResult;
         DWORD     dwID;
         strTest     sttTest;
         if(g_penvDbEnv == NULL)
              g_pdbTest     =     new     Db(NULL, 0);
         else
              g_pdbTest     =     new     Db(g_penvDbEnv, 0);
              //     Setting databases flags     (Just use with environment).
              g_pdbTest     ->set_flags(DB_CHKSUM | DB_ENCRYPT);
         if(g_penvDbEnv == NULL)
              g_pdbTest     ->set_encrypt("1234", DB_ENCRYPT_AES);
         g_pdbTest->set_bt_compare(compare_int);
         g_iResult     =     g_pdbTest->open(NULL, DB_FULL_NAME, NULL, DB_BTREE, DB_CREATE | DB_THREAD, 0);
         dwID     =     1;
         for(i=0;i<100;i++)
              sttTest.dwID     =     dwID;
              sprintf(sttTest.caTxt, "ID = %04u", sttTest.dwID);
              g_dbtTestKey     .set_data((void*) &sttTest.dwID);
              g_dbtTestKey     .set_size(sizeof(DWORD));
              g_dbtTestData     .set_data((void*) &sttTest);
              g_dbtTestData     .set_size(sizeof(sttTest));
              iResult = g_pdbTest->put(0, &g_dbtTestKey, &g_dbtTestData, DB_NOOVERWRITE);
              dwID++;
         g_pdbTest->sync(0);
         g_pdbTest->close(0);
         delete     g_pdbTest;
         g_pdbTest     =     NULL;
    void     Load()
         strTest     *psttTest;
         if(g_penvDbEnv == NULL)
              g_pdbTest     =     new     Db(NULL, 0);
         else
              g_pdbTest     =     new     Db(g_penvDbEnv, 0);
              //     Setting databases flags     (Just use with environment).
              g_pdbTest     ->set_flags(DB_CHKSUM | DB_ENCRYPT);
         if(g_penvDbEnv == NULL)
              g_pdbTest     ->set_encrypt("1234", DB_ENCRYPT_AES);
         g_pdbTest->set_bt_compare(compare_int);
         g_iResult     =     g_pdbTest->open(NULL, DB_FULL_NAME, NULL, DB_BTREE, DB_CREATE | DB_THREAD, 0);
         // Get a cursor
         g_pdbTest->cursor(NULL, &g_pdbcCursor, 0);
         // Iterate over the database, retrieving each record in turn.
         while((g_iResult = g_pdbcCursor->get(&g_dbtTestKey, &g_dbtTestData, DB_NEXT)) == 0)
              //     Get temp struct.
              psttTest     =     (strTest*)     g_dbtTestData.get_data();
         g_pdbcCursor->close();
         g_pdbTest->close(0);
         delete     g_pdbTest;
         g_pdbTest     =     NULL;
    void     DeleteAll()
         strTest     *psttTest;
         try
              if(g_penvDbEnv == NULL)
                   g_pdbTest     =     new     Db(NULL, 0);
              else
                   g_pdbTest     =     new     Db(g_penvDbEnv, 0);
                   //     Setting databases flags     (Just use with environment).
                   g_pdbTest     ->set_flags(DB_CHKSUM | DB_ENCRYPT);
              if(g_penvDbEnv == NULL)
                   g_pdbTest     ->set_encrypt("1234", DB_ENCRYPT_AES);
              g_pdbTest->set_bt_compare(compare_int);
              g_iResult     =     g_pdbTest->open(NULL, DB_FULL_NAME, NULL, DB_BTREE, DB_CREATE | DB_THREAD, 0);
              // Get a cursor
              g_pdbTest->cursor(NULL, &g_pdbcCursor, 0);
              // Iterate over the database, retrieving each record in turn.
              while((g_iResult = g_pdbcCursor->get(&g_dbtTestKey, &g_dbtTestData, DB_NEXT)) == 0)
                   //     Get temp struct.
                   psttTest     =     (strTest*)     g_dbtTestData.get_data();
                   g_iResult     =     g_pdbcCursor->del(0);
         catch (DbException &dbe)
              sprintf(g_caError,     
                        "%s",
                        dbe.what());
         g_pdbcCursor->close();
         g_pdbTest->close(0);
         delete     g_pdbTest;
         g_pdbTest     =     NULL;
    int compare_int(Db dbp, const Dbt a, const Dbt *b)
         int          iReturn;
         DWORD     dwKey1;
         DWORD     dwKey2;
         dwKey1     =     0;
         dwKey2     =     0;
         iReturn     =     0;
         dwKey1     =     *((DWORD*) a->get_data());
         dwKey2     =     *((DWORD*) b->get_data());
         if(dwKey1 > dwKey2)
              iReturn     =     1;
         else
              if(dwKey1 < dwKey2)
                   iReturn     =     -1;
         return     iReturn;
    // THE CODE (END).
    Thanks,
    DelNeto

    Hi all
    I solved it. No documentation about it, but the solution is to use transaction.
    Just use this DeleteAll function that all works fine.
    void     DeleteAll()
         strTest     *psttTest;
         DbTxn     *pTxn;
         try
              pTxn          =     NULL;
              g_pdbTest     =     NULL;
              if(g_penvDbEnv == NULL)
                   g_pdbTest     =     new     Db(NULL, 0);
              else
                   g_pdbTest     =     new     Db(g_penvDbEnv, 0);
                   //     Setting databases flags     (Just use with environment).
                   g_pdbTest     ->set_flags(DB_CHKSUM | DB_ENCRYPT);
              if(g_penvDbEnv == NULL)
                   g_pdbTest     ->set_encrypt("1234", DB_ENCRYPT_AES);
              g_pdbTest->set_bt_compare(compare_int);
              g_iResult     =     g_pdbTest->open(NULL, DB_FULL_NAME, NULL, DB_BTREE, DB_CREATE | DB_THREAD, 0);
              if(g_penvDbEnv == NULL)
                   g_pdbTest->cursor(NULL, &g_pdbcCursor, 0);
              else
                   // Get a cursor.
                   g_penvDbEnv->txn_begin(NULL, &pTxn, 0);
                   g_pdbTest->cursor(pTxn, &g_pdbcCursor, 0);
              // Iterate over the database, retrieving each record in turn.
              while((g_iResult = g_pdbcCursor->get(&g_dbtTestKey, &g_dbtTestData, DB_NEXT)) == 0)
                   //     Get temp struct.
                   psttTest     =     (strTest*)     g_dbtTestData.get_data();
                   g_iResult     =     g_pdbcCursor->del(0);
              g_pdbcCursor->close();
              if(g_penvDbEnv != NULL)
                   pTxn->commit(0);
         catch (DbException &dbe)
              sprintf(g_caError,     
                        "%s",
                        dbe.what());
              g_pdbcCursor->close();
              if(g_penvDbEnv != NULL)
                   pTxn->abort();
         g_pdbTest->close(0);
         delete     g_pdbTest;
         g_pdbTest     =     NULL;
    Thanks to all readers,
    DelNeto

  • How to delete duplicate data that generated from csv file??

    The thing i have done is that i red all the data in the csv file without removing the duplicate data and display it.. For where i should have a known number of index (about 13), my main file should have 13 records no duplicate values. and how can my Java program update the corresponding record in the main file each time an index is updated??
    Hope somebody can assist me on this..it would be really helpful for me...
    Thank you.
    -Rao-
    Edited by: reemarao on Apr 1, 2010 3:58 AM

    Hi Sudhir,
    In case you have edit access in your system carry out the following procedure:
    1. Create an export datasource on your cube.
    2. Now create the update rules to your cube using the datamart Infosource.
    3. In the update rules multiply all the key figures by
    -1.
    4. Now create an infopackage and give the request id of the duplicate request as selection.
    5. Load the datamart request and do the data validation.
    If you do not ahve edit access there is no other alternative you would have to delete all the data and reconstruct the requests that you need.
    Bye
    Dinesh

  • Table Maintainance Generator Updation problem

    Hello,
    I am having the problem related to table maintainence generator updation.
    I am fetching the data in table maintainance generator from Standard table.
    Now the problem is that, if I fetch  some records ; some records are updated properly but some records are not.
    Please suggest the solution.
    Thanks.
    Swati.

    >
    Swati Khandelwal wrote:
    > Hello All.
    > Thanks for your reply.
    > The field which is not updating is not the key field.
    >
    > Thanks.
    > Swati
    It does't matter.
    But the fields is not updating you need to check its key in table whether it is exsist?
    I'm yes it is there.
    One more thing i would like to confirm are you using Update or modify?

  • Date field is missing in the Table maintainance generator

    Hi,
      A table is created. A date field is there in that table. I tried to create a table maintainance generator for this table using 2 screens. Table maintainance generator is  created. But when I go to SM30 , I am unable to see this <b>DATE</b> field in the SM30 , in the first screen. But when I go to maintainance screen , I am able to see this field. This particularly happening with date field.
    Could you please help me.
    Regards,
    Satya

    go to se11 and type the table what you want.
    utilities, table maintenance generator.
    you config the options that you need.
    press F6 and go to sm30.
    its only this.
    Regards

  • Disable delete button in Table Maintainance Generator

    Hello all,
      How to disable delete button in Table maintainance generator???

    Hi Maya,
    It is very interesting question. If you debug your table maintenance screen, the program of table maintenance screen will not have statically defined pf status. So you cannot exclude delete functionalities using the below statement.
    SET PF-STATUS <the GUI status> EXCLUDING 'DELE'.
    For viewing pf status SAP has programmed in dynamic manner using this FM VIEW_SET_PF_STATUS.
    Before calling above FM you need to exclude delete function. Follow the following step for achieving this
    Go to sm30. Put your table name and press on maintain push button. It will display table entries in maintenance screen.
    Go to system->status
    Click on program name.
    Go to your flow logic of you table maintenance screen number.
    It will have following code in flow logic
    PROCESS BEFORE OUTPUT.
    MODULE LISTE_INITIALISIEREN.
    LOOP AT EXTRACT WITH CONTROL
      TCTRL_ZMAINTAIN CURSOR NEXTLINE.
       MODULE LISTE_SHOW_LISTE.
    ENDLOOP.
    PROCESS AFTER INPUT.
    MODULE LISTE_EXIT_COMMAND AT EXIT-COMMAND.
    MODULE LISTE_BEFORE_LOOP.
    LOOP AT EXTRACT.
       MODULE LISTE_INIT_WORKAREA.
       CHAIN.
        FIELD ZMAINTAIN-MATNR .
        FIELD ZMAINTAIN-KUNNR .
        FIELD ZMAINTAIN-LIFNR .
        MODULE SET_UPDATE_FLAG ON CHAIN-REQUEST.
       ENDCHAIN.
       FIELD VIM_MARKED MODULE LISTE_MARK_CHECKBOX.
       CHAIN.
        FIELD ZMAINTAIN-MATNR .
        MODULE LISTE_UPDATE_LISTE.
       ENDCHAIN.
    ENDLOOP.
    MODULE LISTE_AFTER_LOOP.
    Add new module in PBO for excluding delete function. ex  module set_pf.
    PROCESS BEFORE OUTPUT.
    ****here I added my own code for excluding delete function
    ****begin of addion
    module set_pf.
    ****end of addition
    MODULE LISTE_INITIALISIEREN.
    LOOP AT EXTRACT WITH CONTROL
      TCTRL_ZMAINTAIN CURSOR NEXTLINE.
       MODULE LISTE_SHOW_LISTE.
    ENDLOOP.
    PROCESS AFTER INPUT.
    MODULE LISTE_EXIT_COMMAND AT EXIT-COMMAND.
    MODULE LISTE_BEFORE_LOOP.
    LOOP AT EXTRACT.
       MODULE LISTE_INIT_WORKAREA.
       CHAIN.
        FIELD ZMAINTAIN-MATNR .
        FIELD ZMAINTAIN-KUNNR .
        FIELD ZMAINTAIN-LIFNR .
        MODULE SET_UPDATE_FLAG ON CHAIN-REQUEST.
       ENDCHAIN.
       FIELD VIM_MARKED MODULE LISTE_MARK_CHECKBOX.
       CHAIN.
        FIELD ZMAINTAIN-MATNR .
        MODULE LISTE_UPDATE_LISTE.
       ENDCHAIN.
    ENDLOOP.
    MODULE LISTE_AFTER_LOOP.
    *****inclule one line of code for excluding delete fucion
    module set_pf output.
          MOVE 'DELE' TO excl_cua_funct-function. COLLECT excl_cua_funct.
    endmodule.
    Basically sap fetching status dynamically from program SAPLSVIM using FM VIEW_SET_PF_STATUS. Status name is EULG.
    Please donu2019t hardcode anything by using set pf status statment, you just add one line of code the PBO by creating new module.
    Let me know if you need any help .
    Cheers.
    Regards,
    Peranandam

  • How to get customer name automatically in table maintainance generator

    Hi all,
    I am having a table maintainance generator in which ship to party is the primary key, i need to add another column customer name
    fetched from KNA1, i tried using the event
    5.new entries creation, creating a new perform
    but the code which i am writing gives an error "Statement in accessible".
    Kindly help.

    Hi Manohar,
    Thanks for your help, Its working now.
    Issue resolved.

  • How to get serial no automatically in table maintainance generator

    Hello Experts,
    I am building table maintainance generator in that i want the serial number shold be displayed or generated for new entry automatically.
    please mind this, i am going to put more that one entry at single time and my serial number field is primary key in table .
    Thanks,
    Gaurav

    In table maintenance we can add an event during new entries creation, in that add code to read the table for the last entry and increment one to it. Hence whenever a new entry is created serial number value is generated.

  • Problem in table maintainance generator

    Hi,
    I have  a requirement in table maintainance generator i.e. when I clcik on se11,enter the table name and then click on new entries ,my table control that I see on the screen will have some entries that were entered earlier.
    But in my case the entire table control has to be blank when I click on new entries and it should be in output mode only.So please can someone tell me how I can clear the entries .Which event should I use for this?
    Another requirement is that for my table maintaianance generator,I have been asked to remove on field from the table control and place it above the table control as a text field.Now this text field is a key field.When I enter some value in this text field and click on enter,it should give me the values corresponding to this key field.Please can someone help me out with this?Which event should I use for this?
    Regards,
    Sushanth H.S.

    Hi Sushant,
    Considering there are considerable modifications to your table maintenance I would suggest you create a small module pool transaction for your requirement with a table control and code the flow logic (PBO/PAI) yourself.
    For the DB update, you can use the SQL commands. Since it would be an alternative to the table maintenance for a single table, I think the database update part wouldnt be complex to handle at all.
    You would need a table control same as the one in the maintenance however a wizard will make that job very easy for you.
    Finally, assign a transaction to your module pool and you are good to go.
    This is in my opinion not a complex development and also would be easier than trying to modify a SAP generated table maintenance, because adding a text field on top etc. would be drastic changes which cannot be accomplished by events alone.
    Cheers.

  • In table maintainance generator

    hi
    in table maintainance generator, how to validate the data entered in the table. If it is only with the events, how?

    hi,
    you can validate the data in tables, after generating a table maintanance generator.
    Environment->Modification->Events.
    After providing the subroutine name you can go to editor( click on icon provided just besides the form routine) and write the logic for validation.
    for example, if changes are to be made to the data of particular controlling area, a check has to be made if the user is authorised to make changes. Below is a sample code that would give you an idea.
    Sample code:
    *&      Form  auth_check_save
          Checks that the user has the correct authorisations to Change
          details of Controlling Area. If not error message is to be
          displayed on the screen.
    form auth_check_save.
    Data Declaration
    Types
      types:  begin of ty_valtab,
               kokrs(4) type c,
               actvt(2) type c,
             end of ty_valtab,
             begin of ty_fieldtab,
               fieldname(10) type c,
             end of ty_fieldtab.
    Internal Tables
      data:  lt_valtab    type standard table of ty_valtab,
             lt_fieldtab  type standard table of ty_fieldtab,
    Structures
             ls_valtab    type ty_valtab,
             ls_fieldtab  type ty_fieldtab,
             ls_costele   type ztf_costele,
    Variables
             l_status     type zss_rfc_status,
             l_st(1)      type c.
    Constants
      constants : c_0(1)        type c value '0',
                  c_01(2)       type c value '01',
                  c_02(2)       type c value '02',
                  c_06(2)       type c value '06',
                  c_authobj(10) type c value 'Z_KOKRS',
                  c_error(5)    type c value 'ERROR',
                  c_partial(7)  type c value 'PARTIAL',
                  c_kokrs(5)    type c value 'KOKRS',
                  c_actvt(5)    type c value 'ACTVT'.
      clear l_status.
      ls_fieldtab-fieldname = c_kokrs.
      append ls_fieldtab to lt_fieldtab.
      clear ls_fieldtab.
      ls_fieldtab-fieldname = c_actvt.
      append ls_fieldtab to lt_fieldtab.
      clear ls_fieldtab.
      loop at total.
        if <action> eq neuer_eintrag.
          move total to ls_costele.
          ls_valtab-kokrs = ls_costele-kokrs.
          ls_valtab-actvt = c_01.
          append ls_valtab to lt_valtab.
          clear  ls_valtab.
        elseif <action> eq aendern.
          move total to ls_costele.
          ls_valtab-kokrs = ls_costele-kokrs.
          ls_valtab-actvt = c_02.
          append ls_valtab to lt_valtab.
          clear  ls_valtab.
        elseif <action> eq geloescht.
          move total to ls_costele.
          ls_valtab-kokrs = ls_costele-kokrs.
          ls_valtab-actvt = c_06.
          append ls_valtab to lt_valtab.
          clear  ls_valtab.
        endif.
      endloop.
    Authorization Check
      call function 'ZAUTH_CHECK'
        exporting
      PIM_REPID               =
        pim_auth_obj            = c_authobj
      PIM_FIELD_TABNAME       =
      PIM_CHECKALL            =
       importing
         pex_status              = l_status
       tables
         pex_val_tab             = lt_valtab
         pim_field_tab           = lt_fieldtab
       exceptions
         no_input                = 1
         others                  = 2.
      if  l_status = c_error.        "Authorization Check
      message under class: zmessclass
        message e000(zmessclass) with text-e02.  "You have no authorization
                                                "for table maintenance
      elseif l_status = c_partial.
        loop at total.
          if <action> ne space.
            move total to ls_costele.
            read table lt_valtab with key kokrs = ls_costele-kokrs
                                 transporting no fields.
            if sy-subrc <> c_0.
              delete table total.
              delete table extract.
            endif.
          endif.
        endloop.
        message e400(zmessclass).    "All the entries could not be saved
                                    "because of  restricted authorization
      endif.                        "End of Authorization Check
    endform.                    "auth_check_save
    The above code should be written in event  01  : Before saving the data in the database
    Regards,
    Farheen

  • How to delete All E-Mail Address from XD02...?

    Dear All,
    How to Delete the multiple Email address from XD02 for a cutomer while recording BDC?
    or is there an other way like BAPI or else let me know..
    regards...
    Dharmesh

    hi,
    i have no system in the moment but try:
    to read table adr6 before and mark the  entries in table control of your dynpro and delete it (i think you must delete it single)
    A.

  • How to delete a READ ONLY file from Directory

    Hi Friends,
    how to delete a READ ONLY file from Directory , file is in my system only.
    Please help me .
    note: its read only file.
    Thank you.
    Karthik.

    hI,
    try with this statement.
    delete dataset <datasetname>.
    this will definitely work.
    Regards,
    Nagaraj

  • I need to know how to delete downloaded videos and movies from iTunes when the instructions on the support page does not work.  I have swiped the selections from left to right on the phone and nothing happens.

    Hello.
    I need help deleting videos, tv shows, and movies downloaded from itunes.  I have followed the instructions to delete from the macbook, I selected the videos I wanted to delete and right clicked to delete.  Nothing happens.  When I double click on the video it still starts playing.  I also followed the instructions to delete the videos from the iphone by swiping from left to right with nothing happening.  I opened the videos on the ipad and there is no edit selection like in the instructions on the support page. Can you please tell me how to permanently remove this content so it doesn't try to copy from each device when I want to back up the Iphone and Ipad to my macbook.  Thank you.

    Hi Shawninglewood,
    Welcome to the Support Communities!
    The article below may be able to help you with this.
    How to delete content you've downloaded from the iTunes Store, App Store, iBooks Store, or Mac App Store
    http://support.apple.com/kb/HT5772
    Cheers,
    - Judy

  • How to delet the credit card details from apple id account

    how to delet the credit card details from apple id account

    On your computer's iTunes you should be able to edit your payment info by going into the Store > View Account menu option and logging into your account, and on your account's details page there should be a payment link.  If you are doing it on your phone then tap on your id in Settings > iTunes & App Store and tap on 'View Apple ID' on the popup and log into your account  - that should also give you a payments link on your account's page.
    Changing payment info : Change or remove your payment information from your iTunes Store account (Apple ID)
    If you don't get the 'none' option on the payment details screen : Why can’t I select None when I edit my Apple ID payment information?

Maybe you are looking for