Modify a mapping's table location using OMBALTER MAPPING

Hi,
I also posted this on metalink. So here's my question.
I can set certain table properties used by an OWB mapping, using the OMBALTER MAPPING syntax. Here I'm setting a dblink, OMBALTER MAPPING 'MY_MAPPING' MODIFY OPERATOR 'MY_TABLE' SET PROPERTIES (DATABASE_LINK) VALUES ('MY_DBLINK')
OR
loading hint OMBALTER MAPPING 'MY_MAPPING' MODIFY OPERATOR 'MY_TABLE' SET PROPERTIES (LOADING_HINT) VALUES ('/*+ APPEND */')
My problem is when I try changing a table's location. Here's what I already tried.
OMBALTER MAPPING 'MY_MAPPING' MODIFY OPERATOR 'MY_TABLE' SET PROPERTIES (LOCATION) VALUES ('MY_LOCATION')
Result: OMB02902: Error setting property LOCATION of MY_MAPPING: MMM1034: Property LOCATION does not exist
OMBALTER MAPPING 'MY_MAPPING' MODIFY OPERATOR 'MY_TABLE' SET PROPERTIES (LOCATION_NAME) VALUES ('MY_LOCATION')
Result: OMB02902: Error setting property LOCATION_NAME of MY_MAPPING: MMM1034: Property LOCATION_NAME does not exist
Question is how can I change the location name of table "MY_TABLE" used by OWB mapping "MY_MAPPING" with OMB+?
OWB release is 10.2.0.31
Thank you and please excuse this newby question but I find the Oracle documentation very cryptic.

Hi,
That's not correct, I had an issue when I changed the asociated location of one of the modules. After that the mappings of another modules using tables of the altered module continue referencing to the older location. I don't know if the problem persists when closing OWB and opening again, but I made a OMB Script to change de location of the tables. The property name is DB_LOCATION, not LOCATION:
OMBALTER MAPPING 'MY_MAPPING' MODIFY OPERATOR 'MY_TABLE' SET PROPERTIES (DB_LOCATION) VALUES ('MY_NEW_LOCATION')
Regards
ANA GH

Similar Messages

  • Table.Location error running Windows Vista (IIS 7)

    Post Author: surfhound
    CA Forum: Crystal Reports
    I am using crystal reports with ASP.NET 2 and I am trying to set the table location using the following code
    reportTable.Location = reportTable.Location.Substring( reportTable.Location.LastIndexOf(".") + 1 ) ;
    I get the following error:
    Failed to open the connection.\nDetails:  [Database Vendor Code: 17 ]\rFailed to open the connection.\nC:
    Users
    jdoe
    AppData
    Local
    Temp
    Demo Chart {46D6F9EB-1D87-4972-9448-7C060D6FDBC5}.rpt\nDetails:  [Database Vendor Code: 17 ]
    I'm using Windows authentication and set impersonate=true.  Any ideas?

    For general advice see Troubleshooting issues with iTunes for Windows updates.
    The steps in the second box are a guide to removing everything related to iTunes and then rebuilding it which is often a good starting point unless the symptoms indicate a more specific approach. Review the other boxes and the list of support documents further down the page in case one of them applies.
    Your library should be unaffected by these steps but there is backup and recovery advice elsewhere in the user tip.
    tt2

  • Specify field mapping when changing table location

    I want to change the tables in a report to refer to database tables with a different schema, and specify the mapping of fields in code.
    I already have code that changes table locations successfully when the schema does not differ, using the RAS API. As far as I can tell, the RAS API doesn't have a way of handling schema differences. Is that true?
    OTOH, the higher-level CR API does appear to have a mechanism to do field mapping, using the FieldMapping event in the ReportDocument class. I've been trying to use this API for the job, but I don't seem to be able to change the location of a table in the report.
    Here's an example scenario:
    The report was created using an ODBC data source Source1 that contains a table Table1
    I have an ODBC data source Source2 that contains Table1 as well as a table Table2 that is identical to Table1 except that the field names are all slightly different
    I want to change the report so that it uses Table2 in Source2
    I've managed to get the report switched to Source2 with code like this:
    report.DataSourceConnections[0].SetConnection("Source2", "", id, pwd);
    Here's the code I'm using to try to change the report table to refer to Table2:
                Table table = report.Database.Tables[0]; // only one table in the report
                TableLogOnInfo logOnInfo = table.LogOnInfo;
                logOnInfo.TableName = "Table2";
                table.ApplyLogOnInfo(logOnInfo);
                report.VerifyDatabase();
    I've also tried the simpler
    table.Location = "Table2";
    Neither approach changes the table location. I know this because when I preview the report I see data. Since the field names are all different, changing the location should have removed all the fields from the report. (Also, the event handler I have hooked up to the FieldMapping event is not called. Yes, I did enable the event in the ReportDocument.)
    So:
    How do you change the location of a table using the high-level API?
    If you change the location using the RAS API, is the FieldMapping event fired? (Haven't tried this, but somehow I doubt it.)
    Is there a way to do field mapping with the RAS API?
    Thanks!
    - rick cameron

    Hi Rick
    This is not considered a bug. It is a limitation that has been discusses extensively in many of our internal meetings. The implementation job proved to be much too massive and with highly limited ROI. E.g.; the number of requests for the feature is just not there...
    - Ludek
    Senior Support Engineer AGS Product Support, Global Support Center Canada
    Follow us on Twitter

  • How can I see in what maps some table is used?

    Hi,
    Anyone can tell me how can I see in what maps some table is used, without open all of then?
    Thanks,
    Gustavo.

    Good morning Gustavo,
    OWB has some public views defined which can provide you with this information. Check Appendix D (Warehouse Builder Public Views) of the OWB User Guide for all info.
    Log in as the owner of the design time repository, if you run the following query you'll have a basic overview of whic table is used in which mapping:SELECT MAP_NAME         MAPPING_NAME
    ,      DATA_ENTITY_NAME TABLE_NAME
    ,      BUSINESS_NAME    TABLE_OPERATOR_ALIAS
    ,      DESCRIPTION      TABLE_OPERATOR_DESCRIPTION
    FROM   ALL_IV_XFORM_MAP_COMPONENTS
    WHERE  DATA_ENTITY_TYPE = 'TABLE'Good luck, Patrick

  • How to use create, delete, modify butttons in a table

    hi all
    in my application i have emp table in my source view
    in that table i have inserted static data in columns i.e., empid, empname. i have 3 buttons create, delete, modify buttons in that table. when i press Create button it navigates to another view1 in which we have a emp form with create new emp button and labels empid, empname and 2 input fields.After filling the form when hit the create newemp button the form data should be displayed in the table.
    The same for Modify and delete.  i.e., when i select a particular empid row in my source view table and hit the modify button it should navigate to view2 in which the particular record form with data displays and after making necessary modifications the modified data should be display in the particular row .
    For delete button, when i select a particular record in the table and hit delete button it should be deleted from the table.
    any snippet of code is valuable
    Thanks in advance
    sravan

    Hi Sravan,
    I just need a clarification, are you getting the table data from the back-end system?
    On the second view, after the user input on click of the "Create New" or "Modify" button, update the back-end. Once the update is successful, fire a plug back to the first view and reload the table or execute the model again. The updated records will be fetched from back-end system.
    On click of "Delete" button, remove the record from the back-end and execute the model again.
    This holds good if you have the data fetched from the back-end.
    Regards,
    Santhosh.C

  • Register and unregister locations using ombplus script

    hi
    how to register and unregister the locations using ombplus scripts.
    any help would be appreciated.
    thanks,
    Keka

    The deployment script I have posted previously to copy a project mdl over to a new repository for local deployment includes creating a control center, making it the default for your project, creating the locations, assigning them to the control center, and registering them.
    Re: importing mappings using OMBPLUS
    To unregister a location, first you want to undeploy anything deployed from it to avoid dangling references int he repository, and then unregister the location.
    I do that in the following drop_project script that we use to delete an old copy of the project before importing the new version.
    #get db connection info
    source c:\\omb\\owb_config.tcl
    #get standard library
    source c:\\omb\\omb_library.tcl
    # PVCS Version Information
    #/* $Workfile:   ers_owb_drop_project.tcl  $ $Revision:   2.1  $ */
    #/* $Author:   michael.broughton  $
    #/* $Date:   03 Apr 2008 13:43:02  $ */
    #  Connect to repos
    # Commit anything from previous work, otherwise OMBDISCONNECT will fail out.
    exec_omb OMBCOMMIT
    # If already connected, disconnect first.
    set print [exec_omb OMBDISCONNECT]
      # Test if message is "OMB01001: Not connected to repository." or "Disconnected."
      # any other message is a showstopper!
    if [string match Disconn* $print ]  {
       log_msg LOG "Success Disconnecting from previous repository...."
    } else {
       # We expect an OMB01001 error for trying to disconnect when not connected
       if [string match OMB01001* $print ] {
          log_msg LOG "Disconnect unneccessary. Not currently connected...."
       } else {
          log_msg ERROR "Error Disconnecting from previous repository....Exiting process."
          log_msg ERROR "$print"
          #exit
    set print [exec_omb OMBCONNECT $OWB_DEG_USER/$OWB_DEG_PASS@$OWB_DEG_HOST:$OWB_DEG_PORT:$OWB_DEG_SRVC USE REPOSITORY '$OWB_DEG_REPOS']
    if [omb_error $print] {
        log_msg ERROR "Unable to connect to repository."
        log_msg ERROR "$print" "1"
        log_msg ERROR "Exiting Script.............."
        return
    } else {
        log_msg LOG "Connected to Repository"   
    return
    # Connect to project
    set print [exec_omb OMBCC '$PROJECT_TO_DROP_NAME']
    if [omb_error $print] {
       log_msg LOG "Project $PROJECT_TO_DROP_NAME does not exist. No Cleanup Required...."
       exec_omb OMBDISCONNECT CONTROL_CENTER
       exec_omb OMBDISCONNECT
       return
    } else {
       log_msg LOG "Verified project $PROJECT_TO_DROP_NAME exists"
       exec_omb OMBCC '..'
    # Exporting MDL Backup of Project
    set print [exec_omb OMBEXPORT TO MDL_FILE '$EXPORT_FILE_PATH/$EXPORT_FILE_NAME' FROM PROJECT NAMES '$PROJECT_TO_DROP_NAME' OUTPUT LOG TO '$EXPORT_LOG_PATH/$EXPORT_LOG_NAME' ]
    if [omb_error $print] {
       #We expect to get warnings due to differences in Control center names etc,
       if {[string match OMB05105* $print]} {
          log_msg LOG "MDL File $EXPORT_FILE_NAME exported with warnings"
       } else {
           log_msg ERROR "Unable to import $EXPORT_FILE_PATH/$EXPORT_FILE_NAME. "
           log_msg ERROR "$print"
           log_msg ERROR "Exiting Script.............."
           exec_omb OMBROLLBACK
           return
    } else {
       log_msg LOG "MDL File $EXPORT_FILE_NAME exported with no warnings.............."
    exec_omb OMBCOMMIT
    # Validate to Control Center
    set lst [OMBLIST CONTROL_CENTERS]
    if [string match *$CONTROL_CENTER_NAME* lst] {
       log_msg LOG "Verify Control Center $CONTROL_CENTER_NAME Exists."
       log_msg LOG "Setting Passwords to enable de-registration"
       log_msg LOG "Connecting to Control Center $CONTROL_CENTER_NAME"
       set print [exec_omb OMBCONNECT CONTROL_CENTER USE '$DATA_LOCATION_PASS' ]
       if [omb_error $print] {
          log_msg ERROR "Unable to connect to Control Center $CONTROL_CENTER_NAME"
          log_msg ERROR "$print"
          log_msg ERROR "Exiting Script.............."
          exec_omb OMBROLLBACK
          return
       exec_omb OMBCOMMIT
       log_msg LOG "Deleting Existing Mappings."
       set print [exec_omb OMBALTER LOCATION '$DATA_LOCATION_NAME' SET PROPERTIES (PASSWORD) VALUES ('$DATA_LOCATION_PASS')]
       exec_omb OMBCOMMIT
       exec_omb OMBCC '$ORA_MODULE_NAME'
       set mapList [ OMBLIST MAPPINGS ]
       foreach mapName $mapList {
          log_msg LOG "Un-Deploying: $mapName"
          set print [ exec_omb OMBCREATE TRANSIENT DEPLOYMENT_ACTION_PLAN 'DEPLOY_PLAN' ADD ACTION 'MAPPING_DEPLOY' SET PROPERTIES (OPERATION) VALUES ('DROP') SET REFERENCE MAPPING '$mapName' ]
          if [omb_error $print] {
             exit_failure "Unable to create Deployment plan for '$mapName'"
          set print [ exec_omb OMBDEPLOY DEPLOYMENT_ACTION_PLAN 'DEPLOY_PLAN' ]
          if [omb_error $print] {
             exit_failure "Error on execute of Deployment plan for '$mapName'"
          exec_omb OMBDROP DEPLOYMENT_ACTION_PLAN 'DEPLOY_PLAN'
          exec_omb OMBCOMMIT
      exec_omb OMBCC '..'
      exec_omb OMBCC '..'
       log_msg LOG "Un-Registering Code Location."
       set print [exec_omb OMBUNREGISTER LOCATION '$DATA_LOCATION_NAME']
       if [omb_error $print] {
          log_msg ERROR "Unable to register Location $DATA_LOCATION_NAME"
          log_msg ERROR "$print"
          log_msg ERROR "Exiting Script.............."
          exec_omb OMBROLLBACK
          return
       exec_omb OMBCOMMIT
    } else {
       log_msg LOG "Control Center $CONTROL_CENTER_NAME does not exist - unable to de-register locations."
    # Dropping project
    exec_omb OMBDISCONNECT CONTROL_CENTER
    log_msg LOG "Renaming project $PROJECT_TO_DROP_NAME to $PROJECT_TO_DROP_NEWNAME ...."
    set print [exec_omb OMBALTER PROJECT '$PROJECT_TO_DROP_NAME' RENAME TO '$PROJECT_TO_DROP_NEWNAME']
    if [omb_error $print] {
       log_msg LOG "Failed to drop project $PROJECT_TO_DROP_NAME...."
       log_msg ERROR "$print"
       log_msg ERROR "Exiting Script.............."
    exec_omb OMBDISCONNECTThis script uses the same config and library file given in the other post that I pointed you towards. That is where you will find the definition for exec_omb, for example which is simply a wrapper for OMB+ calls
    Now, note that I don't un-deploy any tables, views, sequences etc. We use Designer as our location of record for the data model metadata so our OWB project never deploys any object metadata except for mappings. Your setup may be different, still this should point you in the right direction.
    Cheers,
    Mike

  • Crystal Reports 2008 - Changing Table Locations

    Hello,
    we have several reports which we use by different customers. The customers use different name spaces (table locations) for the same data. To use the same reports with different table locations, we wrote a piece of software replacing the connection strings and table locations. 
    Example:
    A report should be used in a test environment as well as in a production environment:
      The original SQL is (using a DB2 database on a AS400):
        SELECT alias.name FROM as400.production.users alias
      The modified SQL looks like:
        SELECT alias.name FROM as400.test.users alias
    Up to now we used Crystal XI and developed using RDC. We solved the above described problem by reading the report SQL string, replacing the table location in this string and assigned it back to the report object. Modifying the SQL string has the advantage that it works fine also for reports which contain a SQL command.
    Since Crystal Reports 2008 this is not possible anymore (no RDC, no direct way to modify the report SQL string).
    My first approach was to use the CrystalDecisions.CrystalReports.Engine.Table object. First I just wanted to see what really was the content of the Location and Name property:
    for (int i = 0; i < rdReport.Database.Tables.Count; ++i)
      Table rt = rdReport.Database.Tables<i>;
      Console.WriteLine("Table Nr : {0}", i);                   
      Console.WriteLine("  Table Loc  : {0}", rt.Location);
      Console.WriteLine("  Table Name : {0}", rt.Name);
    My problem with this is that the output for the report with the SQL in the above example is:
    Table Nr: 0
      Table Loc : users
      Table Name: alias
    So obviously not the real table location and table name is returned, but instead the table name for the table location and the alias for the table name. Unsurprisingly setting the location had not the originally desired effect.
    Furthermore if the report was designed using a SQL command, the location and in the name property contain the string COMMAND. Therefore the table object doesn't seems to be the solution to my problem.
    Thanks to the help of a user in this forum here, I figured out how to read the SQL string of a report. Unfortunately I did not found a way to assign it back to the report.
    Has anybody here an idea how to solve my problem? I'm open for every kind of hint.
    Thanks in advance,
    Ron

    My solution looks like this:
    ReportDocument rdReport = new ReportDocument();                   
    rdReport.Load(sReportName, OpenReportMethod.OpenReportByTempCopy);
    CrystalDecisions.ReportAppServer.ClientDoc.ISCDReportClientDocument rcDocument = rdReport.ReportClientDocument;                   
    for (int i = 0; i < rdReport.Database.Tables.Count; ++i)
        CrystalDecisions.ReportAppServer.DataDefModel.ISCRTable rctTable = rcDocument.DataDefController.Database.Tables<i>;
        if (rctTable.ClassName == "CrystalReports.CommandTable")
            Console.WriteLine("Processing CommandTable {0}",rctTable.Name);
            Console.WriteLine("  Old Qualified Name: {0}", rctTable.QualifiedName);
            Console.WriteLine("  Old Alias:          {0}\n" , rctTable.Alias);
            CrystalDecisions.ReportAppServer.DataDefModel.CommandTable tbOldCmd = (CrystalDecisions.ReportAppServer.DataDefModel.CommandTable) rctTable;
            CrystalDecisions.ReportAppServer.DataDefModel.CommandTable tbNewCmd = new CrystalDecisions.ReportAppServer.DataDefModel.CommandTable();
            tbNewCmd.Name = tbOldCmd.Name;
            tbNewCmd.Alias = tbOldCmd.Alias;
            tbNewCmd.CommandText = sNewSql;
            tbNewCmd.ConnectionInfo = tbOldCmd.ConnectionInfo.Clone(true);
            CrystalDecisions.ReportAppServer.DataDefModel.PropertyBag pbAttr = tbNewCmd.ConnectionInfo.Attributes;
            // set dlls
            pbAttr["Database DLL"] = "crdb_ado.dll";
            pbAttr["QE_DatabaseName"] = "NL67S021OUD";
            pbAttr["QE_DatabaseType"] = "OLE DB (ADO)";
            pbAttr["QE_ServerDescription"] = "192.0.5.24";
            pbAttr["QE_SQLDB"] = "True";
            pbAttr["SSO Enabled"] = "False";
            // set connection string                  
            CrystalDecisions.ReportAppServer.DataDefModel.PropertyBag pbLogOnProp = (CrystalDecisions.ReportAppServer.DataDefModel.PropertyBag)pbAttr[sAttrLogOnProp];
            pbLogOnProp.RemoveAll();
            // strangely comma seperated values instead of semicolon seperated values are needed here
            pbLogOnProp.FromString("Provider=IBMDA400,Data Source=" + sServerName + ",Initial Catalog=" + sDBName + ",User ID=" + sUserId + ",Password=" + sPwd + ",Convert Date Time To Char=TRUE,Catalog Library List=,Cursor Sensitivity=3");
            tbNewCmd.ConnectionInfo.UserName = sUserId;
            tbNewCmd.ConnectionInfo.Password = sPwd;
            rcDocument.DatabaseController.SetTableLocation(tbOldCmd, tbNewCmd);                           
        else
            Console.WriteLine("Processing Table {0}",rctTable.Name);                           
            Console.WriteLine("  Old Qualified Name: {0}", rctTable.QualifiedName);
            Console.WriteLine("  Old Alias:          {0}\n", rctTable.Alias);
            CrystalDecisions.ReportAppServer.DataDefModel.ISCRTable rctNew = new CrystalDecisions.ReportAppServer.DataDefModel.Table();
            rctNew.Name = rctTable.Name;
            rctNew.Alias = rctTable.Alias;
            rctNew.QualifiedName = sDBName + ".V41TSTDBF.CRGUOPF";
            rctNew.ConnectionInfo = rctTable.ConnectionInfo.Clone(true);
            CrystalDecisions.ReportAppServer.DataDefModel.PropertyBag pbAttr = rctNew.ConnectionInfo.Attributes;
            // set dlls
            pbAttr["Database DLL"] = "crdb_ado.dll";
            pbAttr["QE_DatabaseName"] = "NL67S021OUD";
            pbAttr["QE_DatabaseType"] = "OLE DB (ADO)";
            pbAttr["QE_ServerDescription"] = "192.0.5.24";
            pbAttr["QE_SQLDB"] = "True";
            pbAttr["SSO Enabled"] = "False";
            // set connection string                  
            CrystalDecisions.ReportAppServer.DataDefModel.PropertyBag pbLogOnProp = (CrystalDecisions.ReportAppServer.DataDefModel.PropertyBag) pbAttr[sAttrLogOnProp];
            pbLogOnProp.RemoveAll();
            // strangely comma seperated values instead of semicolon seperated values are needed here
            pbLogOnProp.FromString("Provider=IBMDA400,Data Source=" + sServerName + ",Initial Catalog=" + sDBName + ",User ID=" + sUserId + ",Password=" + sPwd + ",Convert Date Time To Char=TRUE,Catalog Library List=,Cursor Sensitivity=3");
            rctNew.ConnectionInfo.UserName = sUserId;
            rctNew.ConnectionInfo.Password = sPwd;                         
            rcDocument.DatabaseController.SetTableLocation(rctTable, rctNew);
            Console.WriteLine("  New Qualified Name: {0}", rctTable.QualifiedName);
            Console.WriteLine("  New Alias:          {0}\n", rctTable.Alias);
    Console.WriteLine("\nSetting parameter {0} to value {1}", rdReport.ParameterFields[0].Name, iDataId);
    rdReport.SetParameterValue(0, iDataId);
    Console.WriteLine("\nShow SQL: ");
    CrystalDecisions.ReportAppServer.Controllers.RowsetController rsController;
    CrystalDecisions.ReportAppServer.ClientDoc.ISCDReportClientDocument rdClient = rdReport.ReportClientDocument;
    CrystalDecisions.ReportAppServer.DataDefModel.ISCRGroupPath rdGroupPath = new CrystalDecisions.ReportAppServer.DataDefModel.GroupPath();
    string temp;
    string sql;
    rsController = rdClient.RowsetController;
    sql = rsController.GetSQLStatement(rdGroupPath, out temp);
    Console.WriteLine(sql);
    Console.WriteLine("Printing");
    PageMargins pmMargins = rdReport.PrintOptions.PageMargins;
    pmMargins.bottomMargin = 350;
    pmMargins.leftMargin = 350;
    pmMargins.rightMargin = 350;
    pmMargins.topMargin = 350;
    rdReport.PrintOptions.ApplyPageMargins(pmMargins);
    rdReport.PrintOptions.PrinterName = sPrinterName;
    rdReport.PrintToPrinter(1,     // copies
                            false, // collated
                            0,     // start page
                            0);   // end page
    rdReport.Close();
    Regards,
    Ron

  • Set table location

    Post Author: midav
    CA Forum: Data Connectivity and SQL
    Hi, CR 8.5 had   a menu option where one could manually modify table location from &#91;db_name&#93;.&#91;owner&#93;.table_name to just table_name by deleting &#91;db_name&#93;.&#91;owner&#93; prefix which would make your report portable between different databases. It seems Crystal 11.5 doesn't have this option any more.How can I achieve the same in CR 11.5 designer?Thank you, Midav 

    Post Author: zen69
    CA Forum: Data Connectivity and SQL
    Are you sure you can delete it or it was creating  an alias for the table? eg: SELECT * FROM &#91;dbname&#93;.&#91;owner&#93;.table MyTable  Then you can use MyTable.field ? Maybe you should use ODBC to connect to the DB ?  

  • Error while executing the table statistics using Brtools

    Dear Team,
    We are getting ORA-01031: insufficient privileges error whenever we have tried to execute the update or table statistics using brtools on our SAP development server. I have checked the permissions of sapcheck directory and changed it to 775 still error remains the same. I have observed, it is failing to create the sta or chk files in sapcheck directory after executing update statistics using Brtools.
    BR0291I BRCONNECT will be started with options '-p initDEV.sap -l E -f stats -t  "USTUD" -p 1'
    BR0280I BRTOOLS time stamp: 2010-07-20 12.02.33
    BR0670I Enter 'c[ont]' to continue, 'b[ack]' to go back, 's[top]' to abort:
    c
    BR0280I BRTOOLS time stamp: 2010-07-20 12.02.34
    BR0257I Your reply: 'c'
    BR0259I Program execution will be continued...
    BR0801I BRCONNECT 6.40 (50)
    BR0280I BRCONNECT time stamp: 2010-07-20 12.02.42
    BR0301E SQL error -1031 at location BrLicCheck-12
    ORA-01031: insufficient privileges
    BR0806I End of BRCONNECT processing: cedsegpe.log 2010-07-20 12.02.42
    BR0280I BRCONNECT time stamp: 2010-07-20 12.02.42
    BR0804I BRCONNECT terminated with errors
    I have checked the owner for SAPUSER table and it is showing as OPS$DEVADM
    Please, advise me on the same.
    Thanks and Regards,
    Kedar

    Dear All,
    Thanks for your responses.
    Permissions are set as below for br* files.
    sap-dev:devadm 23> ls -ltr br*
    -rwxrwxr-x   1 oradev     sapsys     3437688 Oct 31  2008 brarchive
    -rwxrwxr-x   1 oradev     sapsys     3547760 Oct 31  2008 brbackup
    -rwxrwxr-x   1 oradev     sapsys     4632408 Oct 31  2008 brconnect
    -rwxrwxr-x   1 devadm     sapsys     3850224 Oct 31  2008 brrecover
    -rwxrwxr-x   1 devadm     sapsys     1480656 Oct 31  2008 brrestore
    -rwxrwxr-x   1 devadm     sapsys     4837672 Oct 31  2008 brspace
    -rwxrwxr-x   1 oradev     sapsys     2175208 Oct 31  2008 brtools
    I guess it is fine because with these set of permissions, it is working absolutely fine in my quality system.
    QAS Permissions are as belows for your information
    sap-qas:qa1adm 22> ls -ltr br*
    -rwsrwxr-x   1 oraqa1     sapsys     3437688 Oct 31  2008 brarchive
    -rwsrwxr-x   1 oraqa1     sapsys     3547760 Oct 31  2008 brbackup
    -rwsrwxr-x   1 oraqa1     sapsys     4632408 Oct 31  2008 brconnect
    -rwxrwxr-x   1 qa1adm     sapsys     3850224 Oct 31  2008 brrecover
    -rwxrwxr-x   1 qa1adm     sapsys     1480656 Oct 31  2008 brrestore
    -rwxrwxr-x   1 qa1adm     sapsys     4837672 Oct 31  2008 brspace
    -rwsrwxr-x   1 oraqa1     sapsys     2175208 Oct 31  2008 brtools
    So do you feel still it has something to do with permissions?
    Thanks and Regards,
    Kedar

  • Problem in modifying the main internal table gt_data

    Hello i have written code for modifying the main internal table. i have read data from ausp table and put into the internal table gt_ausp. now i want to modify my main table GT-DATA with gt_ausp. i am not able to do this.
    LOOP AT gt_data  INTO ls_list.
        lt_temp-objek  =  ls_list-matnr.
        APPEND  lt_temp.                  " 특성값 발췌용도로 저장
        APPEND  ls_list  TO lt_work.      " 핵심작업용도로 저장
      ENDLOOP.
      DESCRIBE TABLE lt_temp.
      IF  sy-tfill  EQ  0.
        pv_flg  =  'X'.
        EXIT.
      ENDIF.
    Get 제품인증(플랜트별).....
      DESCRIBE TABLE lt_cetino_tp.
            플랜트          자재번호
            카타로그-인증   코드그룹-인증   인증코드
            Certi. No.
    Get 자재별 특성값..........
              오브젝트  특성이름  내부특성   내부카운터  특성값
      SELECT    aobjek    batnam   aatinn    aatzhl    a~atwrt
            INTO CORRESPONDING FIELDS OF TABLE  lt_ausp_tp
            FROM ausp AS a  INNER JOIN  cabn AS b
              ON aatinn  =  batinn
             FOR ALL ENTRIES IN  lt_temp
           WHERE a~objek  EQ  lt_temp-objek   " 오브젝트키(자재번호)
             AND a~klart  EQ  '001'           " 클래스유형
           AND a~atzhl  EQ  '001'           " 특성값카운터(최종건만 존재)
                                              자재특성 변경시 변경됨
             AND b~adzhl  EQ  '0000'.
      IF  sy-subrc  EQ  0.
        DELETE ADJACENT DUPLICATES FROM  lt_ausp_tp.
        lt_ausp[]     =  lt_ausp_tp[].
        lt_ausp_tp2[] =  lt_ausp_tp[].
        DELETE ADJACENT DUPLICATES FROM  lt_ausp_tp2.
      Get 특성내역
              내부특성   " 내부카운터
              특성값       특성값내역
        SELECT    aatinn  " aatzhl
                  aatwrt    batwtb
              INTO CORRESPONDING FIELDS OF TABLE  lt_cawn
              FROM cawn AS a  INNER JOIN  cawnt AS b
                ON aatinn  =  batinn  AND
                   aatzhl  =  batzhl  AND
                   aadzhl  =  badzhl
               FOR ALL ENTRIES IN  lt_ausp_tp2
             WHERE a~atinn  EQ  lt_ausp_tp2-atinn  " 내부특성
               AND b~spras  EQ  sy-langu.
      ENDIF.
      SORT  lt_work BY matnr .
      BREAK-POINT.
      LOOP AT lt_work  INTO ls_list.
      특성내역
        READ TABLE  lt_ausp  WITH TABLE KEY  objek = ls_list-matnr
                                             atnam = 'SECTION_WIDTH'.
      수출자재가 아닌 것은 제외
    LS_LIST-SECTION_WIDTH = LT_AUSP-ATWRT.
    MODIFY TABLE GT_DATA FROM LS_LIST  TRANSPORTING SECTION_WIDTH.

    Hi,
    Question before: why dont you just use the std.API for reading the classification data?
    e.g. "BAPI_OBJCL_GETDETAIL"
    Second: a DELETE DELETE ADJACENT DUPLICATES works only only sorted tables.
    Doing this after a select will only succeed randomly depending on the buffers of your data based below.
    ( 90% chance if it is an oracle system)
    To your question:
    Just replace your LOOP AT gt_data into ls_list
    by a LOOP AT gt_data ASSIGNING <current_list_record>.
    then you can access the fields directly:
    <current_list_record>-SECTION_WIDTH = LT_AUSP-ATWRT.
    Cause of your issue:
    "MODIFY" needs a key to to find the record to be updated.
    If your gt_data ist referencing a DDIC table type with a key or a local type with a key
    it has no chance to do it.
    Hope that helps.
    br,

  • Error in import table data using oracle datapump

    i am trying to import table data using oracle datapump
    CREATE TABLE emp_xt (
    ID NUMBER,
    NAME VARCHAR2(30)
    ORGANIZATION EXTERNAL (
    TYPE ORACLE_DATAPUMP
    DEFAULT DIRECTORY backup
    LOCATION ('a.dmp')
    it return the following error
    ORA-29913: error in executing ODCIEXTTABLEOPEN callout
    ORA-29400: data cartridge error
    KUP-04084: The ORACLE_DATAPUMP access driver does not support the ROWID column.
    ORA-06512: at "SYS.ORACLE_DATAPUMP", line 19
    please help me

    .dmp file generated from exp command file not from oracle_datapump

  • Modify key in Hashed table

    Hi All,
    I have hashehed internal table like this.
    data :  it_zawcumsetz like hashed table of zawcumsetz with unique key
    KTONR_OPUS ZZ_AWC WAERS_OPUS.
    I am geeting entries in table.
    LOOP AT it_zawcumsetz into wa_zawcumsetz.
         IF  wa_zawcumsetz-zz_awc IS INITIAL.
             wa_zawcumsetz-zz_awc =  'X'. "New value is * for
         ENDIF.
         MODIFY TABLE it_zawcumsetz FROM wa_zawcumsetz.
       ENDLOOP.
    i want to modify key value in loop.
    Rather than append from wa to another internal table is not possiable.
    Can anybody please tell me how to solve this pblm.
    Thanks,

    Hi Katta.
    If you created a hashed table just to improve the MODIFY inside the loop, change your itab to a standard table and use field symbol:
    DATA: it_zawcumsetz TYPE TABLE OF zawcumsetz.
    FIELD-SYMBOLS: <fs_zawcumsetz> LIKE LINE OF it_zawcumsetz.
    LOOP AT it_zawcumsetz ASSIGNING <fs_zawcumsetz>.
      IF <fs_zawcumsetz>-zz_awc IS INITIAL.
        <fs_zawcumsetz>-zz_awc = 'X'.
      ENDIF.
    ENDLOOP.
    If you can't change to a standard table, maybe you can duplicate the itab, just for the loop:
    DATA: it_std TYPE TABLE OF zawcumsetz.
    FIELD-SYMBOLS: <fs_std> LIKE LINE OF it_std.
    it_std = it_zawcumsetz.
    LOOP AT it_std ASSIGNING <fs_std>.
      IF <fs_std>-zz_awc IS INITIAL.
        <fs_std>-zz_awc = 'X'.
      ENDIF.
    ENDLOOP.
    it_zawcumsetz = it_std.
    REFRESH it_std.
    Regards
    Darley

  • How to modify a data base table ?

    Hi,
        i am working on a list output where if user is editing a field and that field need to be updated in the data base. table is a z table .
    the table has 5 fields .
    mandt       key field
    matnr       key field
    werks      key field
    charg       key field
    lgpla         key field
    usnam
    edate
    in the list output , the user will change the values in the lgpla field and that field need to be changed in the data base table.
    i have used the stmt :
    modify< table> from <internal table> ,
    but a new record is added in the data base instead of overwriting the existing one.
    but the record can be seen modified in the internal table.
    kinldy let me know the method of updating or modifying the existing value in the data base.
    thanks and regards,
    vikram.

    Hi,
    Its not possible to change Primary Key contents in the database.
    it  mention in documentation of MODIFY Statement,
    a line is searched for in the database table that has the same content
    in the primary key as the corresponding beginning part of the work area.
    If such a line is not found,
    a new line is inserted according to the same rules as for the INSERT statement.
    If such a line is found,
    this line is overwritten according to the same rules as for the UPDATE statement
    if you want insert the modified line first Delete from database,Then Use Modify Statement
    Regards,
    Raghava Channooru

  • Clearity reagarding table which used in report..

    Hi Everyone,
    I have one querry regarding one report of material available in stock.My question is that to check material available in stock for only a prticular month which table i have to used, and my selection screen is only storage location and month.
    Thanks & regard.

    Hello Everyone,
    I generated one program to check the material available in stock but the data come out from my program is not matched with the TCODE -MCBA.In mcba  s039 table is used but i used these MAKT,S031,MBEW,MARA,T001L because i didn't get data if i used S039 table. I am sending my program please check it and do need full correction.
    Thanks&Regard.
    <Garbled code removed by moderator. Post only relevant portion of source code using code tags>
    Edited by: saketabap on Nov 9, 2011 8:11 AM
    Edited by: Vinod Kumar on Nov 9, 2011 1:19 PM

  • Add a new record in database table without using table maintance generator

    Hi Expart ,
                  Plz. tell me how to add new record in database table without using table maintance ganerator ....give me one ex.
    Regards
    Bhabani

    Hi,
    The other way to safely handle the modification of tables is through is by programs that can be done with SE38 or SE80.
    To insert into database table we use INSERT statement :
    1. To insert a single line into a database table, use the following:
    INSERT INTO <target> VALUES <wa>.
    INSERT <target> FROM <wa>.
    2. To insert a several lines into a database table, use the following:
    INSERT <target> FROM TABLE <itaba>.
    Or even we can use MODIFY statementas this single statement is used to insert as well as update the records of database table.
    MODIFY <target> FROM <wa>.
    or MODIFY <target> FROM TABLE <itab>.
    thanx.
    Edited by: Dhanashri Pawar on Sep 10, 2008 12:25 PM
    Edited by: Dhanashri Pawar on Sep 10, 2008 12:30 PM

Maybe you are looking for