SBO_SP_PostTransactionNotice and @error_message

Hello all,
Does anybody know if it is possible to notificate some action to the user through
SBO_SP_PostTransactionNotice and @error_message?
We need to notificate some message when a purcharse order is correctly added. We tried to use @error=1 and  @error_message='the message', but when adding purchase order is showing nothing.
We are working 2005 PL34.
Thank you for your help!

Alright,
You just want a message to be displayed on the screen when a PO is added. I don't think you can do this through transaction notification.
There is no messaging function that I believe exists in SAP which can be trigerred with your message when PO is added.
It could be probably a very small piece of SDK code.
Suda

Similar Messages

  • Premiere Pro CS5 Ignores error code and error_message

    My plugin reports an error when returning from PF_Command_Global_Setup, but Premiere Pro CS5 doesn't display the error message to the user.
    It correctly doesn't load the plug-in, but user's have no clue what happened.
    if (!ok){
    out_data->out_flags |= PF_OutFlag_DISPLAY_ERROR_MESSAGE;
    strcpy(out_data->return_msg,
    "MyPlug-in error\n");err = -1;
    return 
    err;

    I  learned something the hard way...
    Don't every return a -1 when your plug-in is running in Premiere. It makes Adobe Media Loader think your plug-in is bad and it will never try to load it again.
    It was a ***** trying to track this down.
    Oh, and Premiere won't display out_data->return_msg if you have one.

  • How to display FRM Error and corresponding ORA  error into alert

    hello
    I m able to catch FRM Error through ON-ERROR Trigger with help of ERROR_CODE
    and ERROR_MESSAGE
    Now i want to know how can i catch ORA error (If Exists )Corresponding to that FRM error .
    Any help will be grately appricated.
    Waiting for Reply......................................

    hello
    i tried following code but it will not display alert..............
    i write following code into .pll file and i called this function on ON_ERROR trigger
    but it will not display alert
    declare
    errcode NUMBER := ERROR_CODE;
         dbmserrcode NUMBER;
         dbmserrtext VARCHAR2(200);
         begin
         IF errcode = 40508 THEN
                             /* ** Form Builder had a problem INSERTing, so
                             ** look at the Database error which
                             ** caused the problem.
                             dbmserrcode := DBMS_ERROR_CODE;
                             dbmserrtext := DBMS_ERROR_TEXT;
                             IF dbmserrcode = -1401 THEN
                             ** ORA-01438 is "value too large for column"
                                  g_fun.MSGBOX('Your number is too large. Try again.');
                             ELSIF dbmserrcode = -1400 THEN
                                  ** ORA-01400 is "Mandatory column is NULL"
                                  g_fun.MSGBOX('You forgot to provide a value. Try again.');
                             ELSE
                                  ** Printout a generic message with the database
                                  ** error string in it.
                                  g_fun.MSGBOX('Insert failed because of '||dbmserrtext);
                             END IF;
         END IF;

  • Sp_TransactionNotification error in 2007 B

    Hi All,
    the following stored procedure was running just fine in 2005 B version.
    set ANSI_NULLS ON
    set QUOTED_IDENTIFIER ON
    go
    ALTER proc [dbo].[SBO_SP_TransactionNotification]
    @object_type nvarchar(25),                     -- SBO Object Type
    @transaction_type nchar(1),               -- [A]dd, <u>pdate, [D]elete, [C]ancel, C[L]ose
    @num_of_cols_in_key int,
    @list_of_key_cols_tab_del nvarchar(255),
    @list_of_cols_val_tab_del nvarchar(255)
    AS
    begin
    -- Return values
    declare @error  int                    -- Result (0 for no error)
    declare @error_message nvarchar (200)           -- Error string to be displayed
    select @error = 0
    select @error_message = N'Ok'
    declare @val nvarchar (1200)           -- Error string to be displayed
    declare @chrin nvarchar(30)
    declare @item nvarchar(20)
    declare @batch nvarchar(32)
    declare @whs nvarchar(8)
    declare @count int
    declare @base nvarchar(6)
    set @count = 0
    --     ADD     YOUR     CODE     HERE
    IF @transaction_type IN ('A','U') AND (@object_type = '106' )
    BEGIN
    set @item = LEFT( @list_of_cols_val_tab_del, CHARINDEX(CHAR(9),  @list_of_cols_val_tab_del,1) - 1)
    set @batch = substring(@list_of_cols_val_tab_del, len(@item)+1, (CHARINDEX(CHAR(9),  @list_of_cols_val_tab_del,len(@item)+2)) - (len(@item)+1))
    --set @base =( select basetype from ibt1 where batchnum = ltrim(rtrim(replace(@batch,char(9),''))))
    set @count = (select count(*) from oibt where  quantity > 0 and batchnum = ltrim(rtrim(replace(@batch,char(9),''))))
    if @count > 1
    begin
    set @error = 1
    set @error_message = 'Please enter different Batch Code for batch ''' + @batch + ''' for item ' + @item 
    select @error, @error_message
    END
    END
    END
    it was to restrict duplicate batch number creation.
    but, when the database was upgraded to 2007 B PL 08, it gives the error , (-1) SBO_SP_TransactionNotification must return a value'.  the error comes when I try to add a new item, a new G/L account, new user etc.
    do I need to change anything in this procedure to make it run on 2007 B ?
    thanks,
    Binita

    Hi Binita,
    It seems like you need to have the line "select @error, @error_message" at the end i.e. outside the IF block as well like
    select @error, @error_message
    END
    END
    select @error, @error_message
    END
    With the release of SAP Business One 2007, Business One will wait for the SBO_SP_TransactionNotification stored procedure to return both parameters @error and @error_message as return values. Without the return of these values, SAP Business One will consider the transaction as failed.
    If you are placing code in the SBO_SP_TransactionNotification, please make sure you always go through the u201Cselect @error, @error_messageu201D line at the end, especially in the case where you want the transaction to be considered as successful.
    Also, you might want to consider using SBO_SP_PostTransactionNotice, which is called after B1 transaction is completed as opposed to SBO_SP_TransactionNotification which is called during B1 transaction.
    Regards
    Aravind

  • Any Control or Solution for Two Payment Draft Knock off to same invoice?

    Hi,
    Q1) Would like to ask is it any control or solution proposed to prevent 2 outgoing payment draft knock off to same invoice?
    Notes:
    This is important because someone had choosed same invoice no 1 to knock off and save as payment draft.The problem will happen when 2nd outgoing payment draft with same invoice add to e system. E system will consider the second payment as payment on account(advance payment).
    Edited by: Marc Riar on Mar 6, 2008 12:44 PM

    Hi,
    the sbo_sp_transactionnotification is somethink like triger in tables. It`s called when you add, update or delete data to db and it`s on you, which condition you wrote there. In the sp you will have for your case as input parameters identification of payment draft, so you need to prepare sql query which based on payment draft will make control, if exists some invoice, for which is more than one payment drafts. If yes, set @error = 1 and @error_message to some explanation (will be shown in status bar of sbo).
    I dont know how you create the payment draft, so I will write some example for testing, which control if in cretaed or updated delivery from vendor is filled vendors no of delivery.
    if @object_type = '20'  and (@transaction_type= 'A' or @transaction_type= 'U')
    begin
         if 1 = (select count(docentry) from opdn with(nolock) where docentry =@list_of_cols_val_tab_del and (numatcard is null or len(numatcard) = 0) )
         begin
              select @error =1
              select @error_message = 'The vendors no isn`t filled
         end
    end
    This sp will be inserted into body of sbo_sp_transactionnotificitaion procedure in your sql.
    Some explanation:
    @object_type = '20'  - vendors delivery
    (@transaction_type= 'A' or @transaction_type= 'U') - A - add, U - update - Im testing it for insert and update existing
    @list_of_cols_val_tab_del - docentry of delivery - input parameters
    if 1 = (select count(docentry) from opdn with(nolock) where docentry =@list_of_cols_val_tab_del and (numatcard is null or len(numatcard) = 0) ) - testing if vendors no is filled
    select @error =1
    select @error_message - throwing error
    hope it helps
    Petr

  • Exception handling in Interconnect

    Hi,
    What is the best way of handling exceptions within oracle interconnect?
    I mean if anything goes wrong within HUB or within adapter I want to put a log for this in a particular directory and also want to send mails to support guys.
    How can I achive this?
    I have already gone through the following URL :
    http://download.oracle.com/docs/cd/B14099_19/integrate.1012/b14069/interconnectmanager.htm#CHDBIICB
    But it doesn't explain how can I set some prior hand to handle the errors/exceptions.
    Regards,
    Koushik

    Under Error Management there are options like below (From which I have chosen some option):
    Items for the "Error Management" menu
    1. List rules
    2. Add rule
    3. View rule
    4. Update rule
    5. Delete rule
    6. Set Mail Server
    7. View Mail Server
    b. Back
    e. Exit
    Select one of the items from the above menu : 2
    Enter the name for this rule : ORA
    Enter the error codes separated by comma [Use % for wildcard matching] : %0
    Do you want to add error message patterns? [y/n] : n
    Do you want the adapter to retry the message in case of above errors? [y/n] : n
    Do you want to send mail notification [y/n] : y
    Enter the From address : [email protected]
    Enter the To addresses separated by comma : [email protected],[email protected],[email protected]
    Enter the subject [$$ERROR_CODE$$ and $$ERROR_MESSAGE$$ variables can be used as part of the subject] : Adapter Error
    Enter the message body [$$ERROR_CODE$$, $$ERROR_MESSAGE$$, $$EXCEPTION$$ variables can be used as part of the message] : $$ERROR_MESSAGE$$
    The rule "ORA" has been added to the rules list
    But how can we know different error codes?
    Regards,
    Koushik

  • Item number is invalid (INV_ICOI_INVALID_ITEM_NUMBER)error in Item Import

    We recieve a warning in item import saying the item code is invalid in MTL_SYSTEM_ITEMS_INTERFACE.
    Process flag for these items in MTL_SYSTEM_ITEMS_INTERFACE is 4, process flag for these
    items in mtl_item_catogries_interface is 3, in mtl_interface_errors :
    message_name = 'inv_icoi_invalid_item_number', column_name='item_number', and
    error_message = 'Item number INT_19 is invalid'.
    Note that in another instance process worked correctly.
    Can Anybody help on this issue.
    Thanks

    Hi Sandeep,
    I have encountered the similar problem some time back.
    To what I remember, I had opened the description of the message which had led me to the customizing entry. After maintaining that entry in the customizing, I could get rid of the message.
    I am not able to recollect exactly what I have done, would you help me with the message number.
    Best regards,
    Harsha

  • Capturing a system error from a FM

    I'm adding/deleting/updating records in KNMT via the RV_CUSTOMER_MATERIAL_UPDATE function module.  I'm trying to find a way to catch the errors from this function module.  For example, if I try to insert a material that already exists, I get a "System error during INSERT (table KNMT subrc 4)" error and it stops the program.  What I want to do is collect that error, write a message to the screen, and go on to the next record to insert/delete/update/etc.  There are no exceptions to the FM so I'm not sure how i'm supposed to do it.  I've tried a TRY/CATCH with a cx_root.  I've also tried using the FMs MESSAGES_INITIALIZE and MESSAGES_GIVE but I can get them to work.  Can anyone point me in the right direction?
    Thanks,
    CD

    Hi,
    Let me give you some more details then, if further questions arised. I offerd an almost-ready-to-use code for the FM mentioned in the initial question. But the addition of
    EXCEPTIONS
        ERROR_MESSAGE = 1.
    works for every function module you could use. In my case the FM PRELIMINARY_POSTING_FB01 that I was calling from my custom code, used to raise a message type 'E' in some cases. But I did not want that message to interrupt the execution of my code. Instead of that, I caught the error and handled it myself. And ERROR_MESSAGE = 1 got the job done. So I think you should give it a try
    Hope this helps,
    Grzegorz

  • Asking about query update sql to UDF or UDT

    Hi experts,
    Is it possible to do a query update/ insert SQL to  UDT or UDF in SP notification ? I don't touch any core SAP's table. Just to UDF of UDT that i create  myself. Is it possible ?
    thanks in advance
    regards
    KK

    To Rahul,
    Thanks For your answer . So what is differences between SBO_SP_PostTransactionNotice and SBO_SP_TransactionNotification ? Usually i use SBO_SP_TransactionNotification for blocking some document or alert. So how about SBO_SP_PostTransactionNotice ?
    Please tell me. I'm new in this.
    To Gordon ,
    So can i just make a query insert sql to UDT in SBO_SP_TransactionNotification ?
    Thanks in advance
    Regards
    KK

  • XML Gateway for EBS

    Hi,
    i am new to this EBS, i am not sure i use the correct word (XML Gateway). i would want to write some programs in the form of URL (people usually it call it XML web call?), so that when other system developed in PL/SQL can refer to this URL whenever they want a certain transaction. It is for warning or validation purpose.
    Below is the scenario.
    For example: i have set the credit limit of $5000 for CUSTOMER A in EBS. So when my user input the order for this CUSTOMER A in other system developed in PL/SQL (mod plsql), i want the package of PL/SQL to make a web call, and this web call will return the result in XML output. <status> and <error_message>. If the status=1 then success, if status=0, then that PL/SQL package should return error.
    how do i achieve that?
    thanks
    Robert

    Robert Tsang wrote:
    hi Srini/Hussein,
    am i in the right track for my query?? is it XML Gateway for EBS?
    regards,
    RobertAFAIK, XML Gateway is used for bulk xml processing using flat files (e.g. EDI transactions). I believe what you are looking for is an EBS function that is exposed as a web service that is callable over middleware using SOA. There are a few examples out there - google for "oracle ebs web service". R12.1.3 has built in SOA gateway that can be used to expose EBS APIs as web services. Check the SOA Gateway R12.1.3 docs at http://download.oracle.com/docs/cd/B53825_07/current/html/docset.html
    HTH
    Srini

  • User Defintion Error

    Hi,
    From which range i can define database error from -20000 to -20999 is this right?
    Using Raise_Application_Error
    Regards,
    Edited by: kingadmin on Jan 6, 2011 6:37 AM

    Yes.
    RAISE_APPLICATION_ERROR(<error_code>, <error_message>)
    Here "error_code" should be in the range of (-20000,-20999) and "error_message" is the user defined error message for the user defined exception

  • Deleting Customer Records

    Is there a way to delete a mailing list AND all associated customer records?

    Hi,
    Let me give you some more details then, if further questions arised. I offerd an almost-ready-to-use code for the FM mentioned in the initial question. But the addition of
    EXCEPTIONS
        ERROR_MESSAGE = 1.
    works for every function module you could use. In my case the FM PRELIMINARY_POSTING_FB01 that I was calling from my custom code, used to raise a message type 'E' in some cases. But I did not want that message to interrupt the execution of my code. Instead of that, I caught the error and handled it myself. And ERROR_MESSAGE = 1 got the job done. So I think you should give it a try
    Hope this helps,
    Grzegorz

  • Ora-1401

    CREATE OR REPLACE PACKAGE BODY ERR_PKG
    AS
    PROCEDURE ERR_PROC
    AS
    CURSOR C1
    IS
        SELECT SEGMENT1 FROM CONV_STG;
    CURSOR C2 (P_SEGMENT1 VARCHAR2)
    IS
        SELECT MIE.ERROR_MESSAGE,MSII.SEGMENT1 FROM  MTL_SYSTEM_ITEMS_INTERFACE MSII
                     , CONV_STG XMIC
                     , MTL_INTERFACE_ERRORS MIE
         WHERE     XMIC.SEGMENT1 = P_SEGMENT1
              AND  MSII.SEGMENT1 = XMIC.SEGMENT1
              AND  MSII.TRANSACTION_ID=MIE.TRANSACTION_ID;
    G_ERROR_MESSAGE VARCHAR2(3000);
    BEGIN
    FOR I IN C1
    LOOP
    G_ERROR_MESSAGE:=NULL;
    FOR J IN C2 (I.SEGMENT1)
    LOOP
    G_ERROR_MESSAGE:=G_ERROR_MESSAGE||','||J.ERROR_MESSAGE;
       IF G_ERROR_MESSAGE IS NULL THEN
       UPDATE CONV_STG SET PROCESS_FLAG='S', ERROR_MESSAGE = 'SUCCESS'
        WHERE SEGMENT1 = J.SEGMENT1;
       ELSE
       UPDATE CONV_STG SET PROCESS_FLAG='IE', ERROR_MESSAGE = G_ERROR_MESSAGE
         WHERE SEGMENT1 = J.SEGMENT1;
       END IF;
    END LOOP;
    END LOOP;
    EXCEPTION
       WHEN OTHERS THEN
       DBMS_OUTPUT.PUT_LINE(SQLERRM||' '||'ERROR');
    END CONV_ERR_PROC;
    END CONV_ERR_PKG;
    ERROR:
    ORA-01401: inserted value too large for column
    could you help me how to resolve it
    Thanks & Regards
    pallis                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

    ERROR:
    ORA-01401: inserted value too large for columnI find the Error message Self - Explanatory. The value you are trying to Insert/Update, exceeds its length.
    What you need to do is, verify the Column attributes using DESC Table_name.
    Check the
    IF G_ERROR_MESSAGE IS NULL THEN
    UPDATE CONV_STG SET PROCESS_FLAG='S', ERROR_MESSAGE = 'SUCCESS'
    WHERE SEGMENT1 = J.SEGMENT1;
    ELSE
    UPDATE CONV_STG SET PROCESS_FLAG='IE', ERROR_MESSAGE = G_ERROR_MESSAGE
    WHERE SEGMENT1 = J.SEGMENT1;
    END IF;code. Verify if PROCESS_FLAG and ERROR_MESSAGE columns have suitable length.
    Check the length of G_ERROR_MESSAGE, if it fits the ERROR_MESSAGE column.
    If you can give us the Output of:
    DESC Table_name
    and the Value of variable G_ERROR_MESSAGE, it would be better.
    EXCEPTION
    WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE(SQLERRM||' '||'ERROR');Seriously think about replacing the code with a proper Exception Handling.

  • Exception 'error_message' in ABAP Objects

    I've got a heterogeneous scenario with new program parts in ABAP objects and older parts in classical ABAP.
    In the older parts some R/3 standard functions are called which dump dialog messages which are not allowed at that state of the program flow ('on commit').
    The simple solution in classical ABAP was to use standard exception 'error_message' in the top level 'call function' statement thus catch all dialog messages in lower levels.
    I am looking for an analog solution in object oriented ABAP. But exception 'error_message' is not allowed with 'call method'. It cannot be defined statically in the methods declaration. And the system exception caused by the dialog error message is not included in the set of catchable system errors.
    I would be grateful for any hints concerning this problem.

    Hi
    Excuse me! But I didn't want to sent you my answer.
    Anyway:
    CLASS lcl_my_class DEFINITION.
      PUBLIC SECTION.
        METHODS my_method
                  EXPORTING
                    EXCEPTION TYPE CHAR1
                  EXCEPTIONS error_messages.
    ENDCLASS.                    "LCL_MY_CLASS DEFINITION
    CLASS lcl_my_class IMPLEMENTATION.
      METHOD my_method.
        IF EXCEPTION = 'X'.
          MESSAGE e208(00) WITH 'Message error'
                      RAISING error_messages.
        ELSE.
          MESSAGE I208(00) WITH 'OK!'.
        ENDIF.
      ENDMETHOD.                    "MY_METHOD
    ENDCLASS.                    "LCL_MY_CLASS IMPLEMENTATION
    So you did want to do a call like this:
    CALL METHOD lcl_my_class=>my_method
       EXCEPTIONS
         error_messages = 1
         error_message  = 2
         OTHERS         = 3.
    No! you can't do it, but you try to insert your call in fm where you use ERROR_MESSAGE addition. I think you can do it if your methods are std.
    Max
    Message was edited by: max bianchi

  • How can I take the part that parses the .XML file and make it a procedure.

    CREATE OR REPLACE PACKAGE BODY XMLSTUD6 AS
    Author: Jimmy Harris
    Created: 5/25/2006
    Purpose: 1.This package has an XML file initialized to a variable called DOC .
              2.It will then take the values from the XML file and insert them into a PL/SQL table.
              3.From the PL/SQL table it will insert values into the STUDENTS table.
              4.After step four above, the STUDLOAD procedure will insert (Sequence,Status, .XML file, USER, SYSDATE, ERROR_Message
                             into the AUDIT_XMLSTUD table regardless if insert status was successfull or not status is indicated by either an Y or
              NO and the original XML filed that was currently processed, the date and user who executed the procedure.
              If the status was NO then it will insert the Oracle SQLERRM massage, into the REASON_FOR_ERROR column.
                             If status is Y then REASOK_FOR_ERROR IS NULL.
                             5,Make sure you embed the xml file with an inner and outer ' ' ie: ' the whole .xml file string ' as the input
                             parameter into the STUDLOAD procedure.
    This package excepts the whole .XML file as a CLOB as an input parameter, so that the end-user will not have
                                  modify the code.      
    Modification History:     1.6/09/2006 JImmy Harris Modified code, added the Function "WORD_CONVERTER1" to accept the requested text data and
    return a coded value back to our Welligent system.     
                                  2. Was advised that a front end type of functionality was not neccesary for this issue so I removed the INSERT_XML_FILE,
                                  UPDATE_XML_FILE and the INSERT_XML_file.
    FUNCTION WORD_CONVERTER1 (v_domain IN VARCHAR2 := null,
    v_incoming IN VARCHAR2 := null) RETURN VARCHAR2 IS
    v_well VARCHAR2(32);
    v_editdd BOOLEAN;
    v_code VARCHAR2(32);
    CURSOR C_conv_wrd IS
    SELECT WELL
    INTO v_code
    FROM CONVERSION_TABLE
    WHERE DOMAIN = UPPER(TRIM(v_domain))
    AND INCOMING = UPPER(TRIM(v_incoming));
    BEGIN
    OPEN c_conv_wrd;
    LOOP
    FETCH c_conv_wrd INTO v_code;
    EXIT WHEN c_conv_wrd%NOTFOUND;
    END LOOP;
    CLOSE c_conv_wrd;
    RETURN v_code;
    END WORD_CONVERTER1;
    PROCEDURE STUDLOAD (DOC CLOB) IS
    v_parser xmlparser.Parser;
    v_doc xmldom.DOMDocument;
    v_nl xmldom.DOMNodeList;
    v_n xmldom.DOMNode;
    v_mm NUMBER;
    v_dd NUMBER;
    v_yyyy NUMBER;
    v_DATE DATE;
    v_race VARCHAR2(1);
    v_eth VARCHAR2(1);
    v_prim_lang VARCHAR2(1);
    v_house_lang VARCHAR2(1);
    v_gender VARCHAR2(1);
    TYPE stuxml_type IS TABLE OF STUDENTS%ROWTYPE;
    s_tab stuxml_type := stuxml_type();
    v_success VARCHAR2(200);
    v_failure VARCHAR2(200);
    l_error_code varchar2(200);
    BEGIN
    -- Create a parser.
    v_parser := xmlparser.newParser;
    xmlparser.setValidationMode(v_parser, FALSE);
    -- Parse the document and create a new DOM document.
    SYS.XMLPARSER.PARSECLOB ( v_parser, DOC );
    v_doc := SYS.XMLPARSER.getDocument(v_parser);
    -- Free resources associated with the Parser now it is no longer needed.
    xmlparser.freeParser(v_parser);
    -- Get a list of all the STUD nodes in the document using the XPATH syntax.
    v_nl := xslprocessor.selectNodes(xmldom.makeNode(v_doc),'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent');
    -- Loop through the list and create a new record in a table collection for each STUD record.
    FOR stud IN 0 .. xmldom.getLength(v_nl) - 1 LOOP
    v_n := xmldom.item(v_nl, stud);
    s_tab.extend;
    -- Use XPATH syntax to assign values to he elements of the collection.
    s_tab(s_tab.last).STUDENT_LAST_NAME :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Name/LastName');
         s_tab(s_tab.last).STUDENT_FIRST_NAME :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Name/FirstName');
         s_tab(s_tab.last).STUDENT_MI :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Name/MiddleName');
         v_dd := xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/BirthDate/Day');
         v_mm := xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/BirthDate/Month');
    v_yyyy := xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/BirthDate/Year');
         v_DATE := TO_DATE(v_mm||' '||v_dd||' '||v_yyyy,'MMDDYYYY');
         s_tab(s_tab.last).STUDENT_DOB := v_date;
         s_tab(s_tab.last).STUDENT_STREET :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Address/Street');
         s_tab(s_tab.last).STUDENT_APART_NO :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Address/ApartmentNumber');
         s_tab(s_tab.last).STUDENT_COUNTY :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Address/County');
         s_tab(s_tab.last).STUDENT_STATE :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Address/State');
         s_tab(s_tab.last).STUDENT_ZIP :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Address/ZipCode');
    v_race := WORD_CONVERTER1('RACE',UPPER(xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Race')));
         v_eth := WORD_CONVERTER1('EHTNICITY',UPPER(xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Ethnicity')));
         v_prim_lang:= WORD_CONVERTER1('PRIMARY_LANG',UPPER(xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/PrimaryLanguage')));
         v_house_lang:= WORD_CONVERTER1('SECONDARY_LANG',UPPER(xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/HouseholdLanguage')));
         v_gender := WORD_CONVERTER1('GENDER',UPPER(xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Gender')));
    s_tab(s_tab.last).STUDENT_RACE := v_race;
         s_tab(s_tab.last).STUDENT_ETHNIC := v_eth;
         s_tab(s_tab.last).STUDENT_PRI_LANG :=v_prim_lang;
         s_tab(s_tab.last).STUDENT_SEC_LANG := v_house_lang;
         s_tab(s_tab.last).STUDENT_GENDER :=v_gender;
    END LOOP;
    FOR stud IN s_tab.first..s_tab.last LOOP
    INSERT INTO STUDENTS (SHISID, SSN, DOE_SCHOOL_NUMBER,PATIENT_TYPE, TEACHER, HOMEROOM,STUDENT_LAST_NAME, STUDENT_FIRST_NAME, STUDENT_MI,STUDENT_DOB,
    STUDENT_BIRTH_CERT, STUDENT_COMM,STUDENT_MUSA, STUDENT_FAMSIZE, STUDENT_FAMINCOME,STUDENT_UNINSURED, STUDENT_LUNCH, STUDENT_ZIP,STUDENT_STATE,
    STUDENT_COUNTY, STUDENT_STREET,STUDENT_APART_NO, STUDENT_PHONE, STUDENT_H2O_TYPE,STUDENT_WASTE_TRT, STUDENT_HOME_SET, STUDENT_NONHOME_SET,
    STUDENT_GENDER, STUDENT_RACE, STUDENT_ETHNIC,STUDENT_PRI_LANG, STUDENT_SEC_LANG, STUDENT_ATRISK,EMER_COND_MEMO, ASSIST_DEVICE_TYPE,
    SCHOOL_ENTER_AGE,STUDENT_CURR_GRADE, S504_ELIG_DATE, S504_DEV_DATE,S504_REV_DATE, STUDENT_504, STUDENT_IEP,IEP_EXP_DATE, GRAD_CLASS, TYPE_DIPLOMA,
    GRADE_RETAIN, LIT_PASS_TEST_MATH, LIT_PASS_DATE_MATH,LIT_PASS_TEST_WRITE, LIT_PASS_DATE_WRITE, LIT_PASS_TEST_READ,LIT_PASS_DATE_READ, SPEC_ED_ELIG,
    SPEC_ED_CODE,TRANSPORT_CODE, TRANSPORT_NO, PRIME_HANDICAP,PRIME_HANDICAP_PERCENT, PRIME_HANDI_MANAGER, FIRST_ADD_HANDI,FIRST_ADD_HANDICAP_PERCENT,
    FIRST_ADD_HANDI_504, FIRST_ADD_HANDI_504_DATE, SECOND_ADD_HANDI, SECOND_ADD_HANDICAP_PERCENT, MED_EXTERNAL_NAME, INS_TYPE, INS_PRI, INS_NAME,
    INS_MEDICAID_NO, ELIGDATE, INS_PRIV_INSURANCE, INS_APPR_BILL, INS_APPR_DATE, INS_PARENT_APPR,INS_POL_NAME, INS_POL_NO, INS_CARRIER_NO,
    INS_CARRIER_NAME, INS_CARRIER_RELATE, INS_AFFECT_DATE, INS_COPAY_OV, INS_COPAY_RX, INS_COPAY_AMBUL,INS_COPAY_EMER, INS_COPAY_OUTPAT,STUDENT_INACTIVE,
    PHYS_ID, ENCOUNTERNUM,USERID,MODDATE, STUDENT_ID, S504_DISABILITY,CHAPTER1, WELLNESS_ENROLL, SCHOOL_OF_RESIDENCE,INITIAL_IEP_DATE, CALENDAR_TRACK,
    USA_BORN,ALT_ID, FUTURE_SCHOOL, IEP_LAST_MEETING,IEP_LAST_SETTING, IEP_LAST_REFER_EVAL, THIRD_ADD_HANDI,LEP, GIFTED, IEP_EXIT_REASON,
    CASE_MANAGER_ID, INTAKE_NOTES, CALLER_PHONE,CALL_DATE, CALLER_RELATIONSHIP, CALLER_NAME,BUSINESS_PHONE, FAX, EMAIL,HIGHEST_EDUCATION, INTAKE_DATE,
    SERVICE_COORDINATOR, DISCHARGE_DATE, DISCHARGE_REASON, DISCHARGE_NOTES,INTAKE_BY, INTAKE_STATUS, IEP_LAST_SERVED_DATE,IEP_APC_DATE, IEP_EXIT_DATE,
    ADDRESS2, LEGAL_STATUS, RELIGION, EMPLOYMENT_STATUS, TARG_POP_GROUP1, TARG_POP_GROUP2, MARITAL_STATUS,THIRD_ADD_HANDI_PERCENT, LAST_INTERFACE_DATE,
    SERVICE_PLAN_TYPE,CURRENT_JURISDICTION, FIPS, BIRTH_PLACE_JURISDICTION,BIRTH_PLACE_HOSPITAL, BIRTH_PLACE_STATE, BIRTH_PLACE_COUNTRY,
    OTHER_CLIENT_NAME, SIBLINGS_WITH_SERVICES, PERM_SHARE_INFORMATION,PERM_VERIFY_INSURANCE, REFERRING_AGENCY, REFERRING_INDIVIDUAL,AUTOMATIC_ELIGIBILITY,
    INTAKE_IEP_ID, FUTURE_SCHOOL2,FUTURE_SCHOOL3, TRANSLATOR_NEEDED, TOTAL_CHILDREN_IN_HOME,REFERRED_BY, FAMILY_ID, SCREENING_CONSENT_FLAG,PICTURE_FILE,
    DUAL_ENROLLED, DOE_SCHOOL_NUMBER2)
    VALUES (123456789025, null,null ,null,null,null ,s_tab(stud).STUDENT_LAST_NAME,s_tab(stud).STUDENT_FIRST_NAME,s_tab(stud).STUDENT_MI,
    s_tab(stud).STUDENT_DOB,null ,null,null ,null,null,null,null,s_tab(stud).STUDENT_ZIP,s_tab(stud).STUDENT_STATE ,s_tab(stud).STUDENT_COUNTY,
    s_tab(stud).STUDENT_STREET,s_tab(stud).STUDENT_APART_NO,null,null,null ,null , null,
    s_tab(stud).STUDENT_GENDER ,s_tab(stud).STUDENT_RACE , s_tab(stud).STUDENT_ETHNIC,
    s_tab(stud).STUDENT_PRI_LANG ,s_tab(stud).STUDENT_SEC_LANG, null, null ,null , null,
    null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null,
    null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null,
    null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null,
    null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null,
    null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null,
    null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null, null ,null , null, null, null,null );
    END LOOP;
    INSERT INTO AUDIT_XMLSTUD1(XMLSTUDPK,USERID,XMLFILE,STATUS,REASON_FOR_ERROR,DATE_MODIFIED)
    VALUES(SEQ_XMLSTUD1.NEXTVAL,USER,DOC,'Y',NULL,SYSDATE);
    HTP.HTMLOPEN;
    v_success:= 'The values from the .XML file have been successfully inserted into the STUDENTS table in the Oracle Database.';
    htp.bold(v_success);
    HTP.HTMLCLOSE;
    COMMIT;
    -- Free any resources associated with the document now it that it is no longer needed.
    xmldom.freeDocument(v_doc);
    EXCEPTION
    WHEN OTHERS THEN
    l_error_code := SQLERRM;
    INSERT INTO AUDIT_XMLSTUD1(XMLSTUDPK,USERID,XMLFILE,STATUS,REASON_FOR_ERROR,DATE_MODIFIED)
    VALUES(SEQ_XMLSTUD1.NEXTVAL,USER,nvl(DOC,TO_CLOB('No .XML file entered, user pressed button without entering correct information.')),'NO',l_error_code,SYSDATE);
    HTP.HTMLOPEN;
    v_failure:= 'The attempt made to insert files to the Student table has failed because,'||l_error_code;
    htp.bold(v_failure);
    HTP.HTMLCLOSE;
    COMMIT;
    END STUDLOAD;
    PROCEDURE UPDSTUDLOAD (DOC CLOB) IS
    v_parser xmlparser.Parser;
    v_doc xmldom.DOMDocument;
    v_nl xmldom.DOMNodeList;
    v_n xmldom.DOMNode;
    v_mm NUMBER;
    v_dd NUMBER;
    v_yyyy NUMBER;
    v_DATE DATE;
    v_race VARCHAR2(1);
    v_eth VARCHAR2(1);
    v_prim_lang VARCHAR2(1);
    v_house_lang VARCHAR2(1);
    v_gender VARCHAR2(1);
    TYPE stuxml_type IS TABLE OF STUDENTS%ROWTYPE;
    s_tab stuxml_type := stuxml_type();
    v_success VARCHAR2(200);
    v_failure VARCHAR2(200);
    l_error_code varchar2(200);
    BEGIN
    -- Create a parser.
    v_parser := xmlparser.newParser;
    xmlparser.setValidationMode(v_parser, FALSE);
    -- Parse the document and create a new DOM document.
    SYS.XMLPARSER.PARSECLOB ( v_parser, DOC );
    v_doc := SYS.XMLPARSER.getDocument(v_parser);
    -- Free resources associated with the Parser now it is no longer needed.
    xmlparser.freeParser(v_parser);
    -- Get a list of all the STUD nodes in the document using the XPATH syntax.
    v_nl := xslprocessor.selectNodes(xmldom.makeNode(v_doc),'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent');
    -- Loop through the list and create a new record in a table collection for each STUD record.
    FOR stud IN 0 .. xmldom.getLength(v_nl) - 1 LOOP
    v_n := xmldom.item(v_nl, stud);
    s_tab.extend;
    -- Use XPATH syntax to assign values to he elements of the collection.
    s_tab(s_tab.last).STUDENT_LAST_NAME :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Name/LastName');
         s_tab(s_tab.last).STUDENT_FIRST_NAME :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Name/FirstName');
         s_tab(s_tab.last).STUDENT_MI :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Name/MiddleName');
         v_dd := xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/BirthDate/Day');
         v_mm := xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/BirthDate/Month');
    v_yyyy := xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/BirthDate/Year');
         v_DATE := TO_DATE(v_mm||' '||v_dd||' '||v_yyyy,'MMDDYYYY');
         s_tab(s_tab.last).STUDENT_DOB := v_date;
         s_tab(s_tab.last).STUDENT_STREET :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Address/Street');
         s_tab(s_tab.last).STUDENT_APART_NO :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Address/ApartmentNumber');
         s_tab(s_tab.last).STUDENT_COUNTY :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Address/County');
         s_tab(s_tab.last).STUDENT_STATE :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Address/State');
         s_tab(s_tab.last).STUDENT_ZIP :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Address/ZipCode');
    v_race := WORD_CONVERTER1('RACE',UPPER(xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Race')));
         v_eth := WORD_CONVERTER1('EHTNICITY',UPPER(xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Ethnicity')));
         v_prim_lang:= WORD_CONVERTER1('PRIMARY_LANG',UPPER(xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/PrimaryLanguage')));
         v_house_lang:= WORD_CONVERTER1('SECONDARY_LANG',UPPER(xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/HouseholdLanguage')));
         v_gender := WORD_CONVERTER1('GENDER',UPPER(xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Gender')));
    s_tab(s_tab.last).STUDENT_RACE := v_race;
         s_tab(s_tab.last).STUDENT_ETHNIC := v_eth;
         s_tab(s_tab.last).STUDENT_PRI_LANG :=v_prim_lang;
         s_tab(s_tab.last).STUDENT_SEC_LANG := v_house_lang;
         s_tab(s_tab.last).STUDENT_GENDER :=v_gender;
    END LOOP;
    FOR stud IN s_tab.first..s_tab.last LOOP
         UPDATE STUDENTS
         SET
         STUDENT_LAST_NAME = s_tab(stud).STUDENT_LAST_NAME,
         STUDENT_FIRST_NAME = s_tab(stud).STUDENT_FIRST_NAME,
         STUDENT_MI = s_tab(stud).STUDENT_MI,
         STUDENT_DOB = s_tab(stud).STUDENT_DOB,
         STUDENT_ZIP = s_tab(stud).STUDENT_ZIP,
         STUDENT_STATE = s_tab(stud).STUDENT_STATE,
         STUDENT_COUNTY = s_tab(stud).STUDENT_COUNTY,
         STUDENT_STREET = s_tab(stud).STUDENT_STREET,
         STUDENT_APART_NO = s_tab(stud).STUDENT_APART_NO
         WHERE SHISID = 123456789025;
    END LOOP;
    INSERT INTO AUDIT_XMLSTUD1(XMLSTUDPK,USERID,XMLFILE,STATUS,REASON_FOR_ERROR,DATE_MODIFIED)
    VALUES(SEQ_XMLSTUD1.NEXTVAL,USER,DOC,'Y',NULL,SYSDATE);
    HTP.HTMLOPEN;
    v_success:= 'The updated .XML file has been successfully saved to the STUDENTS table in the Oracle Database.';
    htp.bold(v_success);
    HTP.HTMLCLOSE;
    COMMIT;
    -- Free any resources associated with the document now it that it is no longer needed.
    xmldom.freeDocument(v_doc);
    EXCEPTION
    WHEN OTHERS THEN
    l_error_code := SQLERRM;
    INSERT INTO AUDIT_XMLSTUD1(XMLSTUDPK,USERID,XMLFILE,STATUS,REASON_FOR_ERROR,DATE_MODIFIED)
    VALUES(SEQ_XMLSTUD1.NEXTVAL,USER,nvl(DOC,TO_CLOB('No .XML file entered, user pressed button without entering correct information.')),'NO',l_error_code,SYSDATE);
    HTP.HTMLOPEN;
    v_failure:= 'The attempt made to insert files to the Student table has failed because,'||l_error_code;
    htp.bold(v_failure);
    HTP.HTMLCLOSE;
    COMMIT;
    END UPDSTUDLOAD;
    PROCEDURE DELSTUDLOAD (DOC CLOB) IS
    v_parser xmlparser.Parser;
    v_doc xmldom.DOMDocument;
    v_nl xmldom.DOMNodeList;
    v_n xmldom.DOMNode;
    v_mm NUMBER;
    v_dd NUMBER;
    v_yyyy NUMBER;
    v_DATE DATE;
    TYPE stuxml_type IS TABLE OF STUDENTS%ROWTYPE;
    s_tab stuxml_type := stuxml_type();
    v_success VARCHAR2(200);
    v_failure VARCHAR2(200);
    l_error_code varchar2(200);
    BEGIN
    -- Create a parser.
    v_parser := xmlparser.newParser;
    xmlparser.setValidationMode(v_parser, FALSE);
    -- Parse the document and create a new DOM document.
    SYS.XMLPARSER.PARSECLOB ( v_parser, DOC );
    v_doc := SYS.XMLPARSER.getDocument(v_parser);
    -- Free resources associated with the Parser now it is no longer needed.
    xmlparser.freeParser(v_parser);
    -- Get a list of all the STUD nodes in the document using the XPATH syntax.
    v_nl := xslprocessor.selectNodes(xmldom.makeNode(v_doc),'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent');
    -- Loop through the list and create a new record in a table collection for each STUD record.
    FOR stud IN 0 .. xmldom.getLength(v_nl) - 1 LOOP
    v_n := xmldom.item(v_nl, stud);
    s_tab.extend;
    -- Use XPATH syntax to assign values to he elements of the collection.
    s_tab(s_tab.last).STUDENT_LAST_NAME :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Name/LastName');
         s_tab(s_tab.last).STUDENT_FIRST_NAME :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Name/FirstName');
         s_tab(s_tab.last).STUDENT_MI :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Name/MiddleName');
         v_dd := xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/BirthDate/Day');
         v_mm := xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/BirthDate/Month');
    v_yyyy := xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/BirthDate/Year');
         v_DATE := TO_DATE(v_mm||' '||v_dd||' '||v_yyyy,'MMDDYYYY');
         s_tab(s_tab.last).STUDENT_DOB := v_date;
         s_tab(s_tab.last).STUDENT_STREET :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Address/Street');
         s_tab(s_tab.last).STUDENT_APART_NO :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Address/ApartmentNumber');
         s_tab(s_tab.last).STUDENT_COUNTY :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Address/County');
         s_tab(s_tab.last).STUDENT_STATE :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Address/State');
         s_tab(s_tab.last).STUDENT_ZIP :=xslprocessor.valueOf(v_n,'/com.welligent.Student.BasicStudent.Create/DataArea/NewData/BasicStudent/Address/ZipCode');
    END LOOP;
    FOR stud IN s_tab.first..s_tab.last LOOP
         DELETE FROM STUDENTS
         WHERE SHISID = 123456789025;
    END LOOP;
    INSERT INTO AUDIT_XMLSTUD1(XMLSTUDPK,USERID,XMLFILE,STATUS,REASON_FOR_ERROR,DATE_MODIFIED)
    VALUES(SEQ_XMLSTUD1.NEXTVAL,USER,DOC,'Y',NULL,SYSDATE);
    HTP.HTMLOPEN;
    v_success:= 'The .XML file has been successfully deleted from the STUDENTS table in the Oracle Database.';
    htp.bold(v_success);
    HTP.HTMLCLOSE;
    COMMIT;
    -- Free any resources associated with the document now it that it is no longer needed.
    xmldom.freeDocument(v_doc);
    EXCEPTION
    WHEN OTHERS THEN
    l_error_code := SQLERRM;
    INSERT INTO AUDIT_XMLSTUD1(XMLSTUDPK,USERID,XMLFILE,STATUS,REASON_FOR_ERROR,DATE_MODIFIED)
    VALUES(SEQ_XMLSTUD1.NEXTVAL,USER,nvl(DOC,TO_CLOB('No .XML file entered, user pressed button without entering correct information.')),'NO',l_error_code,SYSDATE);
    HTP.HTMLOPEN;
    v_failure:= 'The attempt made to insert files to the Student table has failed because,'||l_error_code;
    htp.bold(v_failure);
    HTP.HTMLCLOSE;
    COMMIT;
    END DELSTUDLOAD;
    END XMLSTUD6;

    Try opening the problem files using a text editor or file viewer to see what the first few bytes contain. All valid FM binary files for FM 11 will contain <MakerFile 11.0> in the first bytes of the file.
    When updating books, it's sometimes better to just to create a new book file and add the files to that.
    When renaming files in a book, changes at the system level will break any links/cross-references between files, so it's always best to use the Rename option in the Book file to change FM file names. This will maintain the correct linkages.

Maybe you are looking for

  • SLG1 error while creating Business Partner

    Hi, Im currently working on SRM 7.0 and keep receiving the following errors in SLG1. Can you kindly advise what might be the root cause for the below errors so ican fix the issue and ensure the same error doesnt pop up going further? Error type 1: Er

  • How to extend the selection from cell to row when click one sepecial cell

    The JTable contains a special column to display the line number for each row. When user click on the first column(contains row number), the selection would extend to the whole row(React something like Excel). How can i achieve that? And how to achiev

  • Sp.G/L indicator

    hi gurus i want to assign  some g/l accoutts  to a special  gl indictor for tds reciveable in t.code OBXY which has been alredy created.plz tell me how i will assign it.means directly in production or transport from devlopment.

  • Rsh command

    In a script, I set the current date to a variable. I want to use that variable in my rsh command. The variable doesn't work. Here's what I do: # Setting the current date EXTENSION=`date "+%m%d%y"` # Do copy on remote system using current date variabl

  • Why dose flash player slow firefox down till its unuseable windows 7

    Hi I'm running windows 7 every time i use flash based chat rooms they slow down and becomes totally unusable and youtube is very laggy too. I'm running Firefox version 24 (at the mo an upgrade from version 20 as the news the firefox the worse that se