Return Parameter in BAPI

can any one tell me...... what is the purpose of Return parameter in BAPI ?

it return all the Message's  ,Exceptions  ,etc
it  is  a  kind  of
Catch ..... endcatch & Try & endtry   what ever  message's  (S,E,A,I,W)it will capture and   maintain in the strucuture called  BAPIRETURN (or)BAPIRETURN2.
Reward points  if it is usefull ..
Girish

Similar Messages

  • How to use Return parameter of BAPI in DOE

    Hello all,
    I have a question on Return parameter of BAPI wrappers written in backend. When we use the BAPI in DOE there i do not see any table which stores these Return parameters then what is the use of writting it in BAPI wrappers.
    Can anyone please clarify??
    Thanks & Best Regards,
    Abhishek

    Hi,
    BAPIRET are stored in log tables during delta download(You can check it in logs and traces of backend integration).
    In case of upload, the bapiret is returned in message error list to the devices. Its also stored in message error list table which you can see it in message monitoring.
    In upload scenario case all the BAPIRET returned by backend are captured ,where as in case of delta load or push the BAPIRET of type 'A' and 'E' are captured by default and other message types are captured when trace setting is higher.(SMMW_TRC_SETTING).
    Regards,
    Dhana

  • Is it necessary to pass RETURN parameter in bapi function module

    Hai All,
                Is it necessary to pass structure to RETURN parameter in bapi_transaction_rollback function module. If it is not necessary then how can it gives return value. Please give me the answer for this one. some sample code below...
    CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'
    IMPORTING
       RETURN        = i_return.
            LOOP AT i_return into wa_return WHERE type EQ c_error.
              wa1_out-postdoc = wa_return-message.
            ENDLOOP.
    Thanks & Regards.
    Laxman.P

    hi
    bapi should never throw an error as it might be called for mass data proceessing
    and it is prefferred not to hault the proceess bcoz of one or two errors.
    that's why the error or success messages are caught and returned in return table.
    in bapi_transaction_rollback the return parameter is not necessary as it will work without that as well.
    the purpose of rollback bapi is just to undo whatever done before that.
    regards
    vijay
    <b>reward points if helpful</b>
    Message was edited by:
            vijay sharma

  • Bapi RETURN Parameter

    All,
      I'm calling the BAPI, which returns the Error via Return Parameter. Can anyone tell me how can i show it Message interface?
    Thanks..
    BM

    Go thru this document - Page no 29. This will show in the message area only.
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/d352a790-0201-0010-5082-b1a608d22b6c
    If you wants show in a specific area on the view, use a Label Control, bind this label with a context variable(showErrorMsg), bind ur error message in that context variable like,
    wdContext.setShowErrorMsg("This is the error");
    Regards,
    Sridhar
    Message was edited by:
            Sridhar kanchanapalli

  • How to read ABAP return parameter into java code

    Hi all,
    How JAVA environment can trap an error returned from abap code?
    E.g.:
    From a BAPI wrapper written like this:
    "function zpm_gi_create .
    ""Interfaccia locale:
    *"  IMPORTING
    *"     VALUE(ZBAPIGOODSMVT) TYPE  ZBAPIGOODSMVT
    *"  EXPORTING
    *"     VALUE(RETURN) TYPE  BAPIRET2
    *"     VALUE(PO_NUMBER_ES) TYPE  ZBAPIEKKO-PO_NUMBER
    *"  TABLES
    *"      GOODSMVT_ITEM STRUCTURE  ZGOODSMVT_ITEM
      data: goodsmvt_header type bapi2017_gm_head_01,
            return2         type bapiret2 occurs 0 with header line,
      call function 'BAPI_GOODSMVT_CREATE'
        exporting
          goodsmvt_header             = goodsmvt_header
          goodsmvt_code               = zbapigoodsmvt-gm_code
          testrun                     = 'X'
    importing
      GOODSMVT_HEADRET   GM         =
        materialdocument              = matdoc
        matdocumentyear               = matyear
    tables
        goodsmvt_item                 = gm_item
      GOODSMVT_SERIALNUMBER       =
          return                      = return2.
    Our return (for istance is):
    "EBM                  312The (internal) unit xx has not been maintained in
    the unit table"
    How JAVA environment can trap this error or interpret the BAPIRET2 structure?
    Is there something to do in the corresponding syncBO?
    regards,
    eliana

    Hi elina ,
    these topic is already discussed in forum.
    Jo has replied to this doubt in these links.
    Re: Return messages in SyncBo
    Can't see RETURN parameter in SyncBO
    Return messages in SyncBo
    just note this..
    have to change like this , when u follow the help.
    if (messageReply.getType() == MessageReplyType.SYNC_BEGIN) {
              if (messageReply.getType() == MessageReplyType.SYNC_END) {
                Regards
                  Kishor Gopinathan

  • The type of RETURNING parameter must be fully specified

    Hello,
    I want to program a locall class, a method to return a table of a local type:
    TYPES:
    BEGIN OF ty_line,
       id   TYPE char10,
       txt  TYPE string,
    END OF ty_line,
    ty_line_tt type standard table of ty_line.
    CLASS cl_html DEFINITION FINAL CREATE PRIVATE.
      PUBLIC SECTION.
        CLASS-METHODS parse importing fdata        type string_table
                            returning value(fmeta) type ty_line_tt.
    ENDCLASS.                    "cl_rep DEFINITION
    Got an error as in the subject. Does that mean that the table type MUST be declared in the ABAP dictionary?
    Regards,
    Michal

    Hello Michal
    Since your static method is PUBLIC you cannot use local types in its interface. The type of the RETURNING parameter must be public as well. Thus, you have to define it in the DDIC.
    Alternatively, you could switch to the more flexible EXPORTING parameters. Or you could return you itab as data reference, e.g.:
    *& Report  ZUS_LOCAL_CLASS                                             *
    REPORT  zus_local_class                                             .
    TYPES:
    BEGIN OF ty_line,
    id TYPE char10,
    txt TYPE string,
    END OF ty_line,
    ty_line_tt TYPE STANDARD TABLE OF ty_line.
    *       CLASS cl_html DEFINITION
    CLASS cl_html DEFINITION FINAL CREATE PRIVATE.
      PUBLIC SECTION.
        CLASS-METHODS parse IMPORTING fdata TYPE string_table
    *    RETURNING value(fmeta) TYPE ty_line_tt.
        RETURNING value(data_obj) TYPE REF TO data.
    ENDCLASS. "cl_rep DEFINITION
    *       CLASS cl_html IMPLEMENTATION
    CLASS cl_html IMPLEMENTATION.
      METHOD parse.
    *   define local data
        DATA:
          lt_line_tt    TYPE ty_line_tt.
        APPEND INITIAL LINE TO lt_line_tt.
        GET REFERENCE OF lt_line_tt INTO data_obj.
      ENDMETHOD.                    "parse
    ENDCLASS.                    "cl_html IMPLEMENTATION
    Regards
      Uwe

  • RFC function module without RETURN parameter thows error in XI. Please help

    Hi Experts,
       I have a File to RFC scenario in XI. The RFC function module that I am using at the receiving end does not have "RETURN" parameter. So when I test my scenario I get "RETURN" parameter not found error on SXMB_MONI.
    So is it mandatory that RFC function module must have RETURN parameter when used in XI?
    Is there any work around to avoid the error without changing the RFC function module?
    Please help!
    Thanks
    Gopal

    In my senario the QOS is best effort because it is a Sync.
    But the function module is sync in nature as it is returning a parameter called SO_Docs and Ret_Msg. The Ret_Msg contains the error info but it not of BAPIRET2 type.
    So is there any way to avoid this error when my QOS is best effort?
    Please help!
    Gopal

  • Return parameter of cursor_type from a package.

    When running or debugging a database package, it appears that a return parameter of cursor_type can not be handled in that SQL Developer will not display the contents of the cursor. We have a large number of packages that contain cursors as output parameters. Currently we use PL/SQL developer which displays the contents of a cursor at the click of a button. This is a great advantage to us as it saves having to write code just for testing purposes.
    We are trying to migrate all users to SQL Developer - Is it possible to display the contents of output parameter cursors in SQL Developer ?

    As you discovered for yourself, ref cursors aren't supported yet.
    Several users are asking for the same, so I'd say chances are big they'll get to that soon. To put more weight on this feature, vote for it on the SQL Developer Exchange.
    K.

  • How return parameter ref Cursor from procedure using dynamic SQL?

    I sorry, but i very need help.
    I using Oracle 8.0.6
    I need to return parameter of type ref Cursor from procedure.
    create or replace package PlanExp is
    type cursortype is ref cursor;
    procedure ShowPlan (cursorparam out
    cursortype.............);
    end PlanExp;
    create or replace package body PlanExp is
    procedure ShowPlan (cursorparam out cursortype,
    .............) Is
    sql_str varchar2(1000);
    sql_str_select varchar2(100);
    sql_str_from varchar2(100);
    sql_str_where varchar2(500);
    Return_Code integer;
    Num_Rows integer;
    cur_id_sel integer;
    tSum_Plan DBMS_SQL.NUMBER_TABLE;
    tSum_Plan_Ch DBMS_SQL.NUMBER_TABLE;
    tSum_Plan_Day DBMS_SQL.NUMBER_TABLE;
    begin
    /* calculating string variables ........... /*
    sql_str := 'select ' || sql_str_select ||
    'from ' || sql_str_from ||
    'where ' || sql_str_where ||
    'group by ' || sql_str_select;
    cur_id_sel := dbms_sql.open_cursor;
    dbms_sql.parse(cur_id_sel, sql_str, dbms_sql.native);
    dbms_sql.define_array(cur_id_sel, 1, tSum_Plan, 20, 1);
    dbms_sql.define_array(cur_id_sel, 2, tSum_Plan_Ch, 20, 1);
    dbms_sql.define_array(cur_id_sel, 3, tSum_Plan_Day, 20, 1);
    Return_Code := dbms_sql.execute(cur_id_sel);
    delete from TEMP_SHOWPLAN;
    Loop
    Num_Rows := dbms_sql.Fetch_Rows(cur_id_sel);
    dbms_sql.column_value(cur_id_sel, 1, tSum_Plan);
    dbms_sql.column_value(cur_id_sel, 2, tSum_Plan_Ch);
    dbms_sql.column_value(cur_id_sel, 3, tSum_Plan_Day);
    if Num_Rows = 0 then
    exit;
    end if;
    Exit When Num_Rows < 20;
    End Loop;
    dbms_sql.close_cursor(cur_id_sel);
    end;
    end PlanExp;
    How return cursor (cursorparam) from 3 dbms_sql.column_value-s ?

    I am using Oracle 8.1.7, so I don't know if this will work in
    8.0.6 or not:
    SQL> CREATE TABLE test
      2    (col1                    NUMBER,
      3     col2                    NUMBER,
      4     col3                    NUMBER)
      5  /
    Table created.
    SQL> INSERT INTO test
      2  VALUES (1,1,1)
      3  /
    1 row created.
    SQL> INSERT INTO test
      2  VALUES (2,2,2)
      3  /
    1 row created.
    SQL> INSERT INTO test
      2  VALUES (3,3,3)
      3  /
    1 row created.
    SQL> CREATE TABLE temp_showplan
      2    (tSum_Plan               NUMBER,
      3     tSum_Plan_Ch            NUMBER,
      4     tSum_Plan_Day           NUMBER)
      5  /
    Table created.
    SQL> EDIT planexp
    CREATE OR REPLACE PACKAGE PlanExp
    IS
      TYPE CursorType IS REF CURSOR;
      PROCEDURE ShowPlan
        (cursorparam    IN OUT CursorType,
         sql_str_select IN     VARCHAR2,
         sql_str_from   IN     VARCHAR2,
         sql_str_where  IN     VARCHAR2);
    END PlanExp;
    CREATE OR REPLACE PACKAGE BODY PlanExp
    IS
      PROCEDURE ShowPlan
        (cursorparam    IN OUT CursorType,
         sql_str_select IN     VARCHAR2,
         sql_str_from   IN     VARCHAR2,
         sql_str_where  IN     VARCHAR2)
      IS
        sql_str                VARCHAR2 (1000);
        cur_id_sel             INTEGER;
        return_code            INTEGER;
      BEGIN
        DELETE FROM temp_showplan;
        sql_str := 'INSERT INTO   temp_showplan '
               || ' SELECT '   || sql_str_select
               || ' FROM '     || sql_str_from
               || ' WHERE '    || sql_str_where;
        cur_id_sel := DBMS_SQL.OPEN_CURSOR;
        DBMS_SQL.PARSE (cur_id_sel, sql_str, DBMS_SQL.NATIVE);
        return_code := DBMS_SQL.EXECUTE (cur_id_sel);
        DBMS_SQL.CLOSE_CURSOR (cur_id_sel);
        OPEN cursorparam FOR SELECT * FROM temp_showplan;
      END ShowPlan;
    END PlanExp;
    SQL> START planexp
    Package created.
    Package body created.
    SQL> VARIABLE g_ref REFCURSOR
    SQL> EXEC PlanExp.ShowPlan (:g_ref, 'col1, col2,
    col3', 'test', ' 1 = 1 ')
    PL/SQL procedure successfully completed.
    SQL> PRINT g_ref
    TSUM_PLAN TSUM_PLAN_CH TSUM_PLAN_DAY
             1            1             1
             2            2             2
             3            3             3

  • Mandatory return parameter in Web Service

    Hello,
    Do you know how to set a return parameter mandatory in a Web Service using an Enterprise JavaBean (Netweaver 2004s)? The method has 2 return parameters in the WSDL:
    <xs:complexType name="SignResponse">
    <xs:sequence>
      <xs:element name="nfeid" type="xs:string" nillable="true" minOccurs="0"/>
      <xs:element name="status" type="xs:int"/>
    </xs:sequence>
    </xs:complexType>
    The status parameter is mandatory, the other is optional (minOccurs="0"). But we also need the nfeid mandatory for the XI-mapping.
    Java:
    public class SignResponse implements Serializable {
         public SignResponse(String s) {
              status = -1;
              nfeid = s;
    Business Method.
    public SignResponse sign(
    Regards, Volker

    I have also tried to return a Document in my webservices but it doesn't work. From what I understood (I am a newbee), webservices must return primitive data type values (int, String, etc.).
    Finally, I changed my webservices so that they return a String :
    Document documentXML                        = new com.sun.xml.tree.XmlDocument();
    //Return the XML document into string
    StringWriter writer                         = new StringWriter();
    ((XmlDocument)documentXML)                    .write(writer);
    return writer                                 .toString();

  • Problem about using xmlbean as return parameter in workshop 9.2 jsr-181 WS

    Hi
    I met a problem with the jsr-181 web service's return parameters in workshop 9.2.
    I wrote a web service which will return a jax-rpc-style javabean as return parameter. This javabean contained three xmlbean objects fields. So, the client can get those xmlbean objects when invoking the web service.
    But I got the error like the following:
    A java class "..." is being used as a parameter or return type that contains a property of field that is an xmlbean "...", this not allowed.
    Maybe workshop 9.2 does not support xmlbean object as the returned javabean's field. But why, i can use that in the workshop 8.1. why workshop 9.2 does not support them.
    And how can i do if the client want to get the three xmlbean objects when invoking the web service.
    Thanks,
    Xueh

    Hi Xueh
    I got it confirmed from engineering that we do NOT support any use of XmlBeans in a Pojo complex type.
    The workaround is to create a top-level xmlbean type that references the other xmlbean types.
    Thanks
    Vimala
    P.S: There seems to be some complexities involved in mapping a JAX RPC type (POJO) to a XMLBean Type. But we do have a internal bug that is tracking this issue.

  • Multiple Values in the Return Parameter

    Hi,
    My application has a decision table , with material group, division fields and has agent as the return parameter.
    I need to maintain more than 1 user for each material group/division combination?
    I even tried using return parameter 'agent' as structure and table too.
    Can I maintain multiple entries. I don't want to maintain multiple rows for multiple agents.
    Is this feasible? If yes, how can I do it?
    Regards,
    Hiranmayi
    Edited by: Hiranmayi Praturi on Dec 8, 2010 7:32 AM

    Thank you Carsten . I did as you suggested. But in the 2nd decision table (result decision table) , it gives me an error saying it has no condition columns.
    Does this have anything to do with the SP , we have SAP_BASIS 701    .
    PS: Your blogs and pdfs have been great help to learn BRFPlus. Thank you.

  • Returning Internal Table as Returning Parameter of Method (by Value).

    When you return an internal table as the returning parameter of a method, it is passed by value.  I understand the concept of passing by value vs. passing by reference, but exactly what this means in this case is ambiguous.
    1)  It could mean that the entire table, including data, is copied from the local table in the method into the parameter provided by the calling code.
    2)  Alternatively, it could mean that only the pointer to the table is passed by value and the data is not literally copied from one place in memory to another.  This would <b>not</b> be the same as passing by reference.  For instance, I believe this is how object references are passed by value.
    I want to know how it works, so that I know if there is an efficiency problem with returning a huge table.  The returning parameter is wonderful for getter methods, and I prefer to use it over exporting parameters, but I have some concern about passing tables as returning parameters since I don't know how this works.
    Can anyone either explain this, or at least make it clear to me whether or not there is an efficiency issue?
    Thanks, in advance,
    -Chris

    Thanks to those who tried to help me with this question, but I finally had to just figure it out on my own.  I just realized today that there is a way to find the answer using the debugger's <i>Go To->Status Display->Memory Use</i> option.  This shows how variables are stored in memory.
    The answer:
    First of all, if you set one internal table equal to another like:
      i_tab1 = i_tab2.
    or like:
      i_tab1[] = i_tab2[].
    both will simply set <i>i_tab1</i> to point to the same memory that <i>i_tab2</i> is using.  It does <b>not</b> make a copy.  Now, if you attempt to change <i>i_tab1</i>, with an <i>append</i> statement for instance, a copy of <i>i_tab2</i>'s memory is made <b>then</b>!  The requested change to <i>i_tab1</i> is then applied to the copied data.  <b>AHA!!!</b>  This means that even if you think you are copying a table, you are not really doing it until it becomes necessary due to a divergence in values.
    I specifically tested a returning parameter to see how memory is handled, and it is basically just like an '<i>=</i>' statment.  No copy of the data is performed at first.  The memory that is allocated for the local variable in the method is simply pointed to by the variable used in the calling code to recieve that value.
    What if you then change the value in the calling code after the method has finished executing?  The answer depends on the situation.  If the value that you returned from the method is still being pointed to by another variable somewhere, then a copy is made when you attempt to change the returned table in the calling code, but if there is no longer another variable pointing to this memory, you can change the table in the calling program all you want without causing a copy in memory.
    For instance, if you have a getter method that returns the value of an attribute, at first no copy will be made, but when you try to change the table in your calling code, a copy will be made then.  However, if you just fill a local table in your getter method and return that table, there will never be a copy made, because the local variable that originally pointed to that memory expired when the method completed.  That means that after the method completes, the only variable pointing to the allocated memory is the one in the calling code that recieved the returning value.
    This is fantastic!!  This behaives in a way that seems to provide maximum efficiency in most cases.  Also, the table copies are <b>never</b> a waste, since they only happen upon changing of one of the table variables that point to the common memory, and in this case you would <b>want</b> to make a copy to avoid corrupting the other variable.
    Also, even if you did return your table as an exporting parameter by reference, you would not gain any significant efficiency.  There would still be no table copy if you don't change the returned table.  Also, if you did change the returned table, you <b>would</b> still produce a table copy if there was another variable, like an attribute, still pointing to the memory that you set your exporting paramter from before.
    The only situation that I can see resulting in a needless efficiency problem is if someone used a getter method to return the value of a table attribute, then changed the returned table in the calling program, and then used a setter method to set the whole table attribute equal to the changed table.  This would be a waste, so maybe this should be accomplished in another way.
    In conclusion, there is essentially no reason to hesitate returning a whole internal table as a returning parameter from a method call, even though it is pass by value.
    Kudos to the ABAP development team for their good design!

  • The returned value of BAPI call

    Hi, experts,
    I have a question about returned value of BAPI call.
    when the returned value is mapped as an attribute and this return value itsself is of the type: table of a certain structure. Is there any possibility that the value of this table still can be extracted from the mapped attribute? If it is possible, how?
    If not, how should this kind of situation be handled:
    when the returned value of the function at the backend has more one layer structure?
    Thanks and best regards,
    Fan

    In my experience you shouldn't use the service wizard to generate the context of such deeply nested structures. They don't generate or map correctly because it tries to put the table type as the type of the context attribute.
    Instead you should propery model the relationship in the context using nested nodes. Here is an example of address <-> address text where you can have multiple address texts per address.  From the service this was a returned nested table.
    ****BP Address and Address Text
      data lo_nd_bp_addr type ref to if_wd_context_node.
      data lo_nd_bp_addr_text type ref to if_wd_context_node.
      data lo_el_bp_addr type ref to if_wd_context_element.
    * navigate from <CONTEXT> to <BP_ADDR> via lead selection
      lo_nd_bp_addr = wd_context->get_child_node( name = wd_this->wdctx_bp_addr ).
      lo_nd_bp_addr->bind_table( wd_this->gt_bp_addr ).
    ****Add the Address Text Table as Child of each Address Context Record
      data element_set type wdr_context_element_set.
      field-symbols <wa_set> like line of element_set.
      field-symbols <wa_bp_addr> like line of wd_this->gt_bp_addr.
      element_set = lo_nd_bp_addr->get_elements( ).
      loop at element_set assigning <wa_set>.
        read table wd_this->gt_bp_addr index sy-tabix assigning <wa_bp_addr>.
        lo_nd_bp_addr_text = <wa_set>->get_child_node( name = if_componentcontroller=>wdctx_bp_addr_text ).
        lo_nd_bp_addr_text->bind_table( <wa_bp_addr>-t_text ).
      endloop.

  • Regarding Returning Parameter and Static method

    Hi frnds,
    I am learning oops ABAP. I want to use returning parameters in method and also STATIC METHOD.
    If any example it will be more helpful
    regards,
    satya

    Hi satya,
                 Check this out ,Its helpful.
    To get some values from a method , one can use the exporting, changing or returning parameters.If one uses RETURNING parameters, the following restrictions apply:-(1) No EXPORTING/CHANGING parameters can be used for the method.(2) Only one RETURNING parameter can be used.(3) RETURNING parameters are only passed by value.This program demonstrates the use of RETURNING parameters and the various ways   to call a method with RETURNING parameter to get the value into some variable.
    Sample Program
    </code>
    report ysubdel1 message-id 00.
    data : w_num type i.
    class c1 definition .
    public section. 
    methods : m1 importing input1 type i
                            input2 type i
                            returning value(result) type i .
    endclass.
    class c1 implementation.
    method  : m1.
    result = input1 * 2 + input2.
    endmethod.
    endclass.
    start-of-selection.
    data : obj1 type ref to c1 . 
    create object obj1.
    Syntax 1     
    call method obj1->m1 EXPORTING input1 = 5                                                        input2 = 4  
                                   RECEIVING result = w_num.  
      write:/5 w_num .
    Syntax 2
         w_num = obj1->m1( input1 = 10 input2 = 20 ).
      write:/5 w_num .
    Syntax 3     
    move obj1->m1( input1 = 2 input2 = 3 ) to w_num .  
    write:/5 w_num .
    </code>
    Static method example
    <code>
    REPORT  zstatic.                              .
    data : num type i.
    class testclass definition.
    public section.
      class-methods : testmethod.
    endclass.
    class testclass implementation.
    method : testmethod.
      num = 5.
      write:/5 num.
    endmethod.
    endclass.
    start-of-selection.
    call method testclass=>testmethod.
    </code>
    Reward Points if u find helpful.
    Thnks & Regards,
    Rajesh

Maybe you are looking for

  • Mini to old regular TV

    Hey I'm connecting the Mini to my regular TV using the Apple DVI-to-Video adapter, now the picture on the TV doesn't sit right, it doesn't fill the whole screen, and it goes a too up and right, meaning I have black lines on the bottom and on the left

  • Javascript that ran in 2.0 no longer works in 2.1

    There is some javascript that ran in safari 2.0 (412) that no longers works in 2.1 (419.3). Essentially, it should be a text field that has all of the text inside selected. Below is a simple code example (note: this javascript was generated with VBSc

  • Apache with Tomcat and dispatcher class.

    I have a MVC design set up with a controller and dispatcher class. I am trynig to forward the results to a specific JSP. If I run the design completely within Tomcat, then everything works great. I have a tomcat site set up called /jsp. My servlet is

  • How to transfer folders  from I-pad to mini I-pad

    HHow to transfer folders from I-pad to I-pad mini?

  • HP Server 2008 R2 keeps restarting

    Ok, so I have a HP Server in my office and this morning, I had to restart and afterwards, it wont load again. Its odd because it shows the BIOS screen, and when it starts loading to ask me for password, it just restarts again and then tells me Window