No 'processFunction' method found on RFM call - JNDI questions

I have beens struggling with calling a Java RFM from ABAP.
ABAP makes the call with the name of the function all in upper case, apparently.  (Can anyone confirm that?)  Unfortunately, the bean name is in mixed case, and after deployment, the RFC engine is unable to find the function.  It was my belief that I could define a JNDI name for the Enterprise Bean>Session Bean>JNDI name.  However, when I do so, and then deploy, the name doesn't seem to appear in the JNDI directory using Visual Administrator.
Q1:  Is there soem series of operations that must take place in order for the bean's JNDI name to get placed into he directory, other than deployment?  It feels like the JNDI directory isn't really getting updated at deployment, but after I bounce the server...
At any rate, after much thrashing, restarting servers, etc., lo and behold! the JNDI name showed up in the directory root, and apparently the RFC engine was able to find it, because he quit dumping me off with 'function not found'.  However, now he's saying that the processFunction method is missing (which it's not). I'm wondering if I've generated the correct JNDI entry, and if not, what should I do to fix it?
Q2.  Here are the JNDI directory root entries for my JNDI name - do they look right?  (The string of periods don't exist - just trying to show indentation) How does this entry lead the RFC entry to my bean?
Z_RFC_EXAMPLE  (which is my JNDI name)
....[Class Name]: com.sap.engine.interfaces.cross.ObjectReferenceImpl
....[Object Value]: 95
I also found these entries in the JNDI directory: localejbs [Context]
...Z_RFC_EXAMPLE
........[Class Name]: <package>.<Z_rfc_exampleLocalHomeImpl0
........[Object Value]: NON Serializable Object 
I also found:
rfcaccessejb [Context]
....Z_RFC_EXAMPLE
......[Class Name]: javax.naming.Reference
......[Object Value]: Reference Class Name: localejbs/Z_RFC_EXAMPLE
Q3:  Are these entries enough for the RFC engine to handle a call from ABAP for Z_RFC_EXAMPLE and invoke my bean Z_rfc_exampleBean?  If so, how come he can't find my processFunction() method?  If not, how do I specify things for deployment so that he can find the right bean and method?
Sure hope someone out there can help on this; it's very frustrating...

Hi David,
> ABAP makes the call with the name of the function all
> in upper case, apparently.  (Can anyone confirm
> that?)
Function module names are always uppercase in ABAP, so the call will be in uppercase, too.
>  Unfortunately, the bean name is in mixed
> case, and after deployment, the RFC engine is unable
> to find the function.  It was my belief that I could
> define a JNDI name for the Enterprise Bean-->Session
> Bean-->JNDI name. 
This is true, the bean name doesn't matter actually, if you define the JNDI name of the bean as the uppercase name of the function module, which should be called. If the function module in the ABAP system is "RFC_CALL_J2EE", then the JNDI name of the bean, which handles the call, should also be "RFC_CALL_J2EE".
>However, when I do so, and then
> deploy, the name doesn't seem to appear in the JNDI
> directory using Visual Administrator.
>
> Q1:  Is there soem series of operations that must
> take place in order for the bean's JNDI name to get
> placed into he directory, other than deployment?
> It feels like the JNDI directory isn't really
> y getting updated at deployment, but after I bounce
> the server...
No, the server application (containing the beans you want to use to be called) must be deployed without errors <b>and</b> must be running. If both is true, the JNDI entries "contained" in the server application are added to the JNDI registry. You can check, if an application is deployed and running using the "Deploy" service of the visual admin.
>
> At any rate, after much thrashing, restarting
> servers, etc., lo and behold! the JNDI name showed up
> in the directory root, and apparently the RFC engine
> was able to find it, because he quit dumping me off
> with 'function not found'.  However, now he's saying
> that the processFunction method is missing (which
> it's not). I'm wondering if I've generated the
> correct JNDI entry, and if not, what should I do to
> fix it?
>
If the processFunction method is searched, the RFC provider service is able to find the bean, so the JNDI entry is correct.
> Q2.  Here are the JNDI directory root entries for my
> JNDI name - do they look right?  (The string of
> periods don't exist - just trying to show
> indentation) How does this entry lead the RFC entry
> to my bean?
>
> Z_RFC_EXAMPLE  (which is my JNDI name)
> ....[Class Name]:
> com.sap.engine.interfaces.cross.ObjectReferenceImpl
> ....[Object Value]: 95
>
>
> I also found these entries in the JNDI directory:
> localejbs [Context]
> ...Z_RFC_EXAMPLE
> ........[Class Name]:
> <package>.<Z_rfc_exampleLocalHomeImpl0
> ........[Object Value]: NON Serializable Object 
>
> I also found:
>
> rfcaccessejb [Context]
> ....Z_RFC_EXAMPLE
> ......[Class Name]: javax.naming.Reference
> ......[Object Value]: Reference Class Name:
> localejbs/Z_RFC_EXAMPLE
>
Yes, they're ok. The RFC provider service uses the "rfcaccessejb/Z_RFC_EXAMPLE" for the lookup. Since the service is able to find the bean, this problem is solved.
> Q3:  Are these entries enough for the RFC engine to
> handle a call from ABAP for Z_RFC_EXAMPLE and invoke
> my bean Z_rfc_exampleBean?  If so, how come he can't
> find my processFunction() method?  If not, how do I
> specify things for deployment so that he can find
> the right bean and method?
>
There are (at least) two important things for the method search to succeed:
1. The method signature has to be:
public <anyReturnType> processFunction(com.sap.mw.jco.JCO.Function.class) throws <exceptionList>
The return type and exception list don't matter, since they are not relevant for a method search via reflection.
2. The server application classloader must "know" JCO. So please ensure, that you have added the reference to the JCO library to you EAR project also, NOT only to your EJB module project.
Hope that helps.
Regards
Stefan

Similar Messages

  • No method found error when calling java stored procedured

    hi:
    i am rather confused about this. i have written several
    java stored procedures and all of them work fine. but when i tried another one , the error message 'no method found 'occurs
    when i call the procedure from sqlplus.
    it' s a simple procedure . but it's very strange and happens
    from time to time
    my compile shell as following
    javac -classpath $ORACLE_HOME/jdbc/lib/classes12.zip GenFiles.java
    $ORACLE_HOME/bin/loadjava -u zw/zw@aixtest GenFiles.class
    and
    my definition as following
    create or replace procedure files(chargeCyckeID varchar2, cycleStart varchar2,cycleEnd varchar2,
    loginName varchar2, filePath varchar2, start1 number, end1 number, step number)
    AS LANGUAGE JAVA
    NAME 'GenFiles.genFile(String , String , String , String , String , int , int , int )';
    and my java code is here :
    import java.sql.*;
    import java.io.*;
    import oracle.jdbc.driver.*;
    public class GenFiles{
         public static void main(String[] args){
              04UU<F7QV\FZ#,V\FZ?*J<#,V\FZ=aJx#,5GB<C{#, ND<~B7>6#,Pr:E?*J<#,Pr:E=aJx#,2=3$#(Iz3IND<~5D<GB<J}#)
         public static void genFile(String chargeCycleID, String cycleStart, String cycleEnd, String loginName, String filePath, int start, int end, int step){
         try{
              String sqllist = "select customer_id,contract_code,     usercode,ani,ord,"
                        + " agent_code,linkman, customer_name , postcode,paymethod_category_id ,"
                        + " ltrim(to_char(cost,'999999990.99')) cost,call_duration,from listani_file where ord> ? and ord<? order by contract_code";
              String sqlcalls1 = "select a.ani || ',' || a.PASS || ',' || to_char(a.START_TIME,'yyyy-mm-dd hh24:mi:ss') stime || ',' || trunc(a.CALL_DURATION/60)||':'||ltrim(to_char(mod(a.CALL_DURATION,60),'09')) CALL_DURATION || ',' || ltrim(to_char((CALL_AMOUNT/ceil(CALL_DURATION/60)),'999999990.99')) RATE || ',' || ltrim(to_char(a.CALL_AMOUNT,'999999990.99')) CALL_AMOUNT"
                        +" from call_fact_mind a "
                        +" where a.usercode=?"
                        + " and a.ani=? "
                        + " and a.period_key<='" + end + "'"
                        + " and a.period_key>='" + start + "'"
                        + " and a.charge_flag='Y' "
                        + " and a.CALL_DURATION>6"
                        + " and a.CALL_AMOUNT>0"
                        +" order by a.period_key";                    
              String sqlcalls2 = "select a.ani || ',' || a.PASS || ',' || to_char(a.START_TIME,'yyyy-mm-dd hh24:mi:ss') stime || ',' || trunc(a.CALL_DURATION/60)||':'||ltrim(to_char(mod(a.CALL_DURATION,60),'09')) CALL_DURATION || ',' || ltrim(to_char((CALL_AMOUNT/ceil(CALL_DURATION/60)),'999999990.99')) RATE || ',' || ltrim(to_char(a.CALL_AMOUNT,'999999990.99')) CALL_AMOUNT "
                        + " from call_fact_mind a "
                        + " where a.usercode=?"
                        + " and a.period_key<='" + end + "'"
                        + " and a.period_key>='" + start + "'"
                        + " and a.charge_flag='Y' "
                        + " and a.CALL_DURATION>6"
                        + " and a.CALL_AMOUNT>0"
                        +" order by a.period_key";                    
              Connection con = new OracleDriver().defaultConnection();
              try{
                   int i = start;
                   //8y>]2=3$Q-;7
                   while( true){
                        if( i>=end ) break;
                        genFile(con, i , i+step, chargeCycleID, loginName, filePath, sqllist, sqlcalls1, sqlcalls2);
                        i += step;
              }catch(Exception ex){
              }finally{
                   if( con != null) con.close();
         }catch(Exception exx){}
              8y>]2=3$Iz3IND<~
         private static void genFile(Connection con, int start, int end, String chargeCycleID, String loginName, String filePath, String sqllist, String sqlcalls1, String sqlcalls2) throws Exception{
              PreparedStatement ps1 = null;
              PreparedStatement ps2 = null;
              PreparedStatement ps3 = null;
              ResultSet rs1 = null;
              ResultSet rs2 = null;
              String fileName = filePath + System.getProperty("file.separator") + start + "_" + end + ".txt";
              BufferedWriter writer = null;
              try{
                   writer = new BufferedWriter(new FileWriter(fileName));
                   ps1 = con.prepareStatement(sqllist);
                   ps2 = con.prepareStatement(sqlcalls1);
                   ps3 = con.prepareStatement(sqlcalls2);
                   ps1.setInt(1, start);
                   ps1.setInt(2, end);
                   rs1 = ps1.executeQuery();
                   //Iz3Ibuffer,V;SPR;6(<GB<J12EP4HkND<~
                   StringBuffer strBuffer = new StringBuffer();
                   int i =0;
                   //Q-;7:OM,=a9{</
                   String preContractCode = "";
                   String currentContractCode = "";
                   while( rs1.next()){
                        currentContractCode = rs1.getString("contract_code");
                        if( rs1.getString("ani") == null){
                             ps2.setString( 1, rs1.getString("usercode"));
                             rs2 = ps2.executeQuery();
                        }else{
                             ps1.setString(1, rs1.getString("usercode"));
                             ps1.setString(2, rs1.getString("ani"));
                             rs2 = ps1.executeQuery();
                        //Hg9{3vOVPB5D:OM,:E#,<SHk:OM,OnM7,contract_costJG:OM,On7QSC
                        if( ! preContractCode.equals(currentContractCode)){                     
                             //TZG0Cf<SHk?UPP
                             strBuffer.append("\r\n");
                             String contractHead = "\"1\"" + ",\"" + rs1.getString("linkman") + "\",\"" + rs1.getString("customer_name")
                                            + "\",\"" + rs1.getString("contract_code") + "\",\"" + rs1.getString("agent_code")
                                            + "\",\"" + chargeCycleID + "\",\"" + rs1.getString("contract_cost") + "\"";
                             strBuffer.append(contractHead);
                        while( rs2.next()){
                             if( i<1000){
                                  i++;
                                  strBuffer.append("\"2\"" + rs2.getString(1));
                             }else{
                                  String str = strBuffer.toString();
                                  writer.write(str, 0, str.length());
                                  strBuffer = new StringBuffer();
                                  strBuffer.append(rs2.getString(1));
                                  i = 1;
                        //<SHk7QSC:O<F
                        if( rs1.getString("ani") == null){
                             String trail = "\"2\"" + ",\"" + "ani: " + "\",\"" + rs1.getString("ani") + "\",\"" + "Total Amount: " + "\",\"" + rs1.getString("cost") + "\"\r\n";
                             strBuffer.append(trail);
                        }else{
                             String trail = "\"2\"" + ",\"" + "usercode: " + "\",\"" + rs1.getString("usercode") + "\",\"" + "Total Amount: " + "\",\"" + rs1.getString("cost") + "\"\r\n";
                             strBuffer.append(trail);
                        preContractCode = currentContractCode;     
                        writer.close();
                        rs2.close();
              }catch(Exception ex){
              }finally{
                   if( rs1 != null) rs1.close();
                   if( rs2 != null) rs2.close();
                   if( ps1 != null) ps1.close();
                   if( ps2 != null) ps2.close();
    i need your help!
    regards
    daniel wang

    Hi again, Daniel,
    I'm only guessing here, but unless you've made lots of mistakes when
    you copied your code to your post to the forum, your method signatures
    don't match. The definition of "genFile" in your java class is quite
    different to what you wrote in your PL/SQL wrapper.
    Also, you have defined "genFile" to be a private method -- I think it
    needs to be public.
    Also, I think the "main" method doesn't need to be in the "GenFiles"
    class -- perhaps you should remove it.
    Also, I think in your PL/SQL wrapper you need to use fully qualified
    names, so use "java.lang.String" and not just "String".
    Lastly, I think you should use the "-force" and "-resolve" flags
    with the "loadjava" command.
    Good Luck,
    Avi.

  • No such method found for com.sun.jndi.toolkit.url.UrlUtil: method

    Hello,
    I have a servlet which allow users to authenticate to IPlanet LDAP server. I have no problem to access it when it runs under a standalone Tomcate server but I have an internal error when it runs under Oracle8i server.
    The following error message was found in mod_serv.log file in \%OracleHome%\Apache\Jserv\logs folder:
    ajp12: Servlet Error: java.lang.NoSuchMethodError: com.sun.jndi.toolkit.url.UrlUtil: method decode(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; not found: com.sun.jndi.toolkit.url.UrlUtil: method decode(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; not found.
    What is the problem? Where should I put my jndi.jar? Thanks.
    Regards
    CY Seah

    Hello,
    I have a servlet which allow users to authenticate to IPlanet LDAP server. I have no problem to access it when it runs under a standalone Tomcate server but I have an internal error when it runs under Oracle8i server.
    The following error message was found in mod_serv.log file in \%OracleHome%\Apache\Jserv\logs folder:
    ajp12: Servlet Error: java.lang.NoSuchMethodError: com.sun.jndi.toolkit.url.UrlUtil: method decode(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; not found: com.sun.jndi.toolkit.url.UrlUtil: method decode(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; not found.
    What is the problem? Where should I put my jndi.jar? Thanks.
    Regards
    CY Seah

  • Operation not found error while calling AM methods from managed bean

    Hi,
    operation not found error while calling AM methods from managed bean.
    written a method with two parameters in AM.
    exposed the method in AM client interface
    in the page bindings added the method in method action ..left empty in the value fields of the parameters.
    calling the method from managed bean like below
    String userNameVal = (String)userName.getValue();
    String passwordVal = (String)password.getValue();
    OperationBinding operationBinding =
    ADFUtils.findOperation("verifyLogin");
    operationBinding.getParamsMap().put("userName",userNameVal);
    operationBinding.getParamsMap().put("password",passwordVal);
    operationBinding.execute();
    i am getting operation verifyLogin not found error.Please suggest me something to do.
    Thanks
    Satya

    Hi vlsn,
    Can you try with the below code
    // in your backing bean
    OperationBinding operation = bindings.getOperationBinding("verifyLogin");
    //Put your both parameters here
    operation.getParamsMap().put("parameter_name1", parameterValue1);
    operation.getParamsMap().put("parameter_name2", parameterValue2);
    operation.execute();
    if (operation.getResult() != null) {
    Boolean result = (Boolean) operation.getResult();
    and share the result.
    regards,
    Rajan

  • The method 'rollback' cant be called when a global transaction is active

    I receive the following error stack while dequeuing a message (aq adapter outbound) and forward the message to a database (database adapter inbound) within Oracle ESB 10.1.3.4.
    The database connection is dynamic using additional variables in the xlst transformation and putting the connection information (jndi name) in the xml doc:
    <xsl:variable name="JDBC_RESOURCE"
    select="/imp1:MixMatchMsg/imp1:Winkel/imp1:JNDI_NAME"/>
    <xsl:variable name="SET_DATASOURCE"
    select="ehdr:setOutboundHeader('/dhdr:OutboundDBHeaderType/dhdr:dataSourceName',$JDBC_RESOURCE,'dhdr=http://xmlns.oracle.com/pcbpel/adapter/db/;')"/>
    An unhandled exception has been thrown in the ESB system.
    The exception reported is: "org.collaxa.thirdparty.apache.wsif.WSIFException:
    esb:///ESB_Projects/mixmatch_MixMatchESB/WriteWinkels.wsdl
    [ WriteWinkels_ptt::merge(IntMixMatchCollection) ]
    - WSIF JCA Execute of operation 'merge' failed due to: DBWriteInteractionSpec Execute Failed Exception.
    merge failed.
    Descriptor name: [WriteWinkels.IntMixMatch].
    [Caused by: The method 'rollback' cant be called when a global transaction is active.]
    ; nested exception is:
         ORABPEL-11616
    DBWriteInteractionSpec Execute Failed Exception.
    merge failed. Descriptor name: [WriteWinkels.IntMixMatch].
    [Caused by: The method 'rollback' cant be called when a global transaction is active.]
    Caused by Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.4.0) (Build 080602))
    : oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException:
    The method 'rollback' cant be called when a global transaction is active.Error Code: 0.
    at oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA.executeRequestResponseOperation(WSIFOperation_JCA.java:644)
    at oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA.executeInputOnlyOperation(WSIFOperation_JCA.java:739)
    at oracle.tip.esb.server.common.wsif.WSIFInvoker.executeOperation(WSIFInvoker.java:927)
    at oracle.tip.esb.server.common.wsif.WSIFInvoker.nextService(WSIFInvoker.java:842)
    at oracle.tip.esb.server.common.wsif.WSIFInvoker.nextService(WSIFInvoker.java:865)
    at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.nextService(OutboundAdapterService.java:231)
    at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.processBusinessEvent(OutboundAdapterService.java:138)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatchNonRoutingService(InitialEventDispatcher.java:411)
    at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(InitialEventDispatcher.java:169)
    at oracle.tip.esb.server.dispatch.BusinessEvent.raise(Bu
    The payload looks as follows:
    <top:IntMixMatchCollection xmlns:top="http://xmlns.oracle.com/pcbpel/adapter/db/top/WriteWinkels">
    <top:IntMixMatch>
    <top:nummer>1</top:nummer>
    <top:omschrijving>C1000 Tandenborstels: 3 voor 2.56</top:omschrijving>
    <top:kassabonOmschrijving1>Tandenborstelactie</top:kassabonOmschrijving1>
    <top:kassabonOmschrijving2>3 voor 2</top:kassabonOmschrijving2>
    <top:aantalPerKlant>2</top:aantalPerKlant>
    <top:begindatum>2009-03-16</top:begindatum>
    <top:einddatum>2009-03-21</top:einddatum>
    <top:mixMatchGroepNummer>1</top:mixMatchGroepNummer>
    <top:mixMatchGroepOmschrijving>WK 200912 Mix matchess</top:mixMatchGroepOmschrijving>
    <top:intMixMatchDsCollection>
    <top:IntMixMatchDs>
    <top:volgnummer>1</top:volgnummer>
    <top:aantalTeNemenArtikelen>3</top:aantalTeNemenArtikelen>
    <top:omschrijving>C1000 Tandenborstels</top:omschrijving>
    <top:kortingToerekenenJn>J</top:kortingToerekenenJn>
    <top:bedragTeBesteden>1.23</top:bedragTeBesteden>
    <top:kortingwaarde>2.56</top:kortingwaarde>
    <top:mixMatchNummer>1</top:mixMatchNummer>
    <top:intMixMatchHfdgrInDsCollection>
    <top:IntMixMatchHfdgrInDs>
    <top:hoofdgroepnummer>16</top:hoofdgroepnummer>
    <top:mixMatchNummer>1</top:mixMatchNummer>
    <top:mixMatchDoosVolgnummer>1</top:mixMatchDoosVolgnummer>
    </top:IntMixMatchHfdgrInDs>
    </top:intMixMatchHfdgrInDsCollection>
    <top:intMixMatchArtikelInDsCollection>
    <top:IntMixMatchArtikelInDs>
    <top:artonnummer>10010205</top:artonnummer>
    <top:actieInkoopprijsEncrypted>6C1407B28B5B7EDC</top:actieInkoopprijsEncrypted>
    <top:uitsluitenJn>J</top:uitsluitenJn>
    <top:mixMatchNummer>1</top:mixMatchNummer>
    <top:mixMatchDoosVolgnummer>1</top:mixMatchDoosVolgnummer>
    </top:IntMixMatchArtikelInDs>
    </top:intMixMatchArtikelInDsCollection>
    <top:intMixMatchHfdsubgrpInDsCollection>
    <top:IntMixMatchHfdsubgrpInDs>
    <top:hoofdsubgroepnummer>82</top:hoofdsubgroepnummer>
    <top:mixMatchNummer>1</top:mixMatchNummer>
    <top:mixMatchDoosVolgnummer>1</top:mixMatchDoosVolgnummer>
    </top:IntMixMatchHfdsubgrpInDs>
    </top:intMixMatchHfdsubgrpInDsCollection>
    </top:IntMixMatchDs>
    </top:intMixMatchDsCollection>
    <top:intMixMatchTijdCollection>
    <top:IntMixMatchTijd>
    <top:dagnummer>1</top:dagnummer>
    <top:begintijd>0001-01-0112.23.00</top:begintijd>
    <top:eindtijd>0001-01-0114.45.00</top:eindtijd>
    <top:mixMatchNummer>1</top:mixMatchNummer>
    </top:IntMixMatchTijd>
    </top:intMixMatchTijdCollection>
    </top:IntMixMatch>
    </top:IntMixMatchCollection>
    Anybody any idea what could be wrong?
    Any ideas for a workaround/solution?

    I encountered this error while trying ADF tutorial CH10 - Developing an Edit Page, after changing some data on the Edit page and click on Save, the error appears on top of the page. The roll back was called implicatly by ADF, per stack trace msg it seems to come from failing to commit and then failing to roll back. Not sure why this is happening, please advise.
    WARNING: The method 'commit' cant be called when a global transaction is active. [TopLink Warning]: 2006.12.27 12:14:39.963--ClientSession(29795927)--Thread(Thread[HTTPThreadGroup-6,5,HTTPThreadGroup])--Local Exception Stack:
    Exception [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 061004)): oracle.toplink.exceptions.DatabaseException
    Internal Exception: java.sql.SQLException: The method 'commit' cant be called when a global transaction is active.Error Code: 0....
    at QPPublicFacade_LocalProxy_4ogao92.mergeEntity(Unknown Source)<----------> WHAT may cause mergeEntity failed??

  • One Method is not getting called from of one BADI Customer_add_data

    Hi,
    I am Implementing one method BUILD_TEXT_FOR_CHANGE_DETAIL
    I have done coding part also and set breakpoint to check the data.
    I went to transaction XD01 and created one customer and check the execution but it didnt reach to the step where i placed the break point.
    I checked the  program    SAPMF02D from transaction x01   and searched for the method where its being called . But search for unsuccessful as no reaults has been found.
    Please help me in rectifing this issue.
    Thanks,
    Izaz.

    if the question is not clear please tell me i ll write it in detail

  • In F110 I getting error No valid Payment method found but i did

    While doing intercompany clearance using Pay methd Y in F110 payment run in payment proposal system showing error "No valid payment method found" this is showing in vendor line item and if i am clicking customer line item showing debit bal still exit because system not picking my pay mthd Y in vendor line item which one i assigned in vendor master data. But for another vendor its posting clearing this error occur only for particular vendor. Any can help me to rectify my error.

    Hello,
    We were get the same error message and found that the solution was that the vendor must have an address.
    In OBVU, Payment method / country, the required master record specs had Street checked on.  This reqiured an address for the vendor.  Once we entered an address the F110 payment run was successful for this vendor.
    Rgds,
    Dan

  • Automatic payment error - no valid payment method found

    I created an invoice which i try to clear in f110. the vendor has the appropriate payment methods specified too but still I get this error "No valid payment method found " for that document.
    kindly assist, if anyone knows where can be the error.
    this is only for one company code.
    thanks

    Hi,
    Check the configuration of Automatic Payment Program.  Check "Bank Determination" and verify whether the paymetn method is set up for the House Bank determined by Automatic Payment Program configuration.
    If the payment method in invoice or vendor master does nto match with the payemnt method set up for the house bank, you may get this error.
    Regards,
    Chirag
    Pls. award points if this is useful.

  • F110 error - No Valid Payment Method found - Account ID missing

    Hello All,
    I am trying to clear some Vendor invoices in F110 using a Payment method. We have entered the House Bank at the time of posting the Vendor Invoice (Invoice is posted through an BAPI) and I am able to see the House Bank in BSEG - HBKID.
    Further for the Payment Method we are using only one House Bank and one Account ID - which has been configured correctly in FBZP - Bank Determination.
    However when we are running F110 for clearing the invoices - we are getting an error no valid payment method found. I am able to see the Payment Method & the House Bank while editing the Proposal - only Parameter which is missing is Account ID - though we have maintained it in Bank Determination configurartion.
    Any help will be appreciated a lot to fix this issue.
    Thanks and regards,
    Ankur

    Dear,
    Everything may be alright but payment method is assigned to Bank Account in Bank selection section FBZP. So, system will process payment from the bank account with assigned payment method. So, there is no Account ID system is not able to find the payment method. It is difficult to provide remedy. If house bank and account ID is not in the vendor master then update them.
    Just try it out....all the best.
    Regards,
    Chintan Joshi.

  • The method 'commit' cant be called when a global transaction is active.

    Hello,
    I've installed the SOAdemo a couple of times on local machines, and it works fine. Now I've deployed the SOADemo on a separate server and a strange error occurs in BPEL when testing the SOADemo.
    The SOAOrderBooking BPEL process runs into an error at the GetOrderId process:
    ================================
    file:/C:/product/10.1.3.1/OracleAS_1/bpel/domains/default/tmp/.bpel_SOAOrderBooking_1.0_937b09d1bd8dae1b33b028b2871aef63.tmp/OrderSequence.wsdl [ OrderSequence_ptt::OrderSequence(OrderSequenceInput_msg,OrderSequenceOutputCollection) ] - WSIF JCA Execute of operation 'OrderSequence' failed due to: DBWriteInteractionSpec Execute Failed Exception.
    unknown failed. Descriptor name: [unknown]. [Caused by: The method 'commit' cant be called when a global transaction is active .
    ; nested exception is:
         ORABPEL-11616
    =================================
    I am using SOA Suite 10.1.3.0 and Database 10201, deployed on Windows.
    Can anybody tell me what can cause this problem?
    Thanks in advance,
    Regards Leon                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

    Hi,
    Hi, I am getting the same error using ESB Database Adapter.
    My faultstring is:
    ========================
    oracle.tip.esb.server.common.exceptions.BusinessEventRetriableException: An unhandled exception has been thrown in the ESB system. The exception reported is: "oracle.tip.esb.server.common.exceptions.BusinessEventRetriableException: An unhandled exception has been thrown in the ESB system. The exception reported is: "org.collaxa.thirdparty.apache.wsif.WSIFException: esb:///ESB_Projects/my_ESB/myAdapter.wsdl [ myAdapter_ptt::myAdapter(InputParameters,OutputParameters) ] - WSIF JCA Execute of operation 'myAdapter' failed due to: DBWriteInteractionSpec Execute Failed Exception.
    unknown failed. Descriptor name: [unknown]. [Caused by: The method 'commit' cant be called when a global transaction is active.]
    ; nested exception is:
         ORABPEL-11616
    DBWriteInteractionSpec Execute Failed Exception.
    unknown failed. Descriptor name: [unknown]. [Caused by: The method 'commit' cant be called when a global transaction is active.]
    Caused by Exceptoin [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 061004)): oracle.toplink.exceptions.DatabaseException
    Belső kivétel: java.sql.SQLException: The method 'commit' cant be called when a global transaction is active.Error Code: 0.
    ==========================
    (BTW, what has 'commit' to do with a procedure that is only reading the database?)
    Regards,
    Patrik

  • This method should not be called anymore. The client was already released i

    Hi,
    while configuring Business Packager for Projects 50.3 fo, we made few changes in R/3 side as per the documentation. after that we are getting following error in portal
    "This method should not be called anymore. The client was already released into the pool or the pool entry was deleted"
    all the chages were reverted in R/3 system still we are getting the same error.
    Can any one help on this issue....
    Thanks in advance and for early responce higher marks would be awarded!!!..     
    Regards
    Ravi Sankar Karri

    Hi,
    Well there were errors in how stop works:
    "Stopping a thread with Thread.stop causes it to
    unlock all of the monitors that it has locked (as a
    natural consequence of the unchecked ThreadDeath
    exception propagating up the stack). If any of the
    objects previously protected by these monitors were in
    an inconsistent state, the damaged objects become
    visible to other threads, potentially resulting in
    arbitrary behavior. "
    I do understand that you want to have something like
    killTheTreadIDontCareAboutConcequences-method, but
    it's better to let all your methods that you want to
    be able to terminate take a timeout argument, and deal
    with the termination in the method. (Close the
    sockets/streams etc that you are blocking on).
    /KajThe point is, it is not always possible to make those blocking methods stop, via some magic "timeout" thingamabob. The bottom line is still that the blocking methods were written incorrectly to begin with (to possibly block indefinitely), so one cannot come up with an across-the-board solution, other than getting the root cause fixed in the first place. However, one is not always in control of fixing the root cause.

  • F110-Payment Run: No valid payment method found

    Hi,
    Whenever we execute F110 Automatic payment run with 'bank transfer' payment method, the  documents for a particular vendor goes into the exception list as 'No valid payment method found' and this document is posted thru' HR- payroll.
    But now I noticed that the document is not going into exception list and it is successfull eventhough I have not changed anything in the vendor master or the payment method.
    Kindly let me know what maybe the reason for the document  not going into the exception list.
    Regards,
    Suresh.

    Hi
    If you didnt assign the Payment Method in Vendor Master Data and  execute F110 Automatic payment run , what ever may be the payment method 'Check payment method' , 'Bank Transfer' , etc , .... you will get the message 'No valid payment method found'.
    With the particular payment method only the document is going to be picked and if the payment method is not found the document wont be picked. Then howcome a document will or willnot come into exception list.
    try to understand the logic.
    Regards
    Venkat

  • F110-No valid Payment method Found

    We have posted an invoice for a vendor in the month of March and the payment method was not assigned in the invoice, at that time the payment method assigned to the vendor master data was direct bank transfer. However now we have changed the payment method to check in vendor master data. And running the APP. The system says in the Proposal that No valid Payment method Found. So I went and gave the payment method in the invoice as check. But still the same message appears.
    Please advice.

    Do you not have information like this in your log:
    21.04.2009 13:45:16 >            Payment method selection additional log
    21.04.2009 13:45:16 > Payment method selection for items due now to the amount of EUR          119,00-
    21.04.2009 13:45:16 > Payment method "L" is being checked
    21.04.2009 13:45:16 > Payment method not defined for foreign currencies
    or
    21.04.2009 09:24:55 Due items with currency RON, pmnt method M - items total is > 0
    When you turn it on you should have it

  • F110 - No valid payment method found for Customer Direct Debits

    Hi All,
    I am running customer Direct debit pre-notifications payment run via F110.
    I am runnnig only for one customer and it appears as an exception with the message 'No valid payment method found
    We have used payment method D lots of times before so it is nothnig to do with the company code or payment method set up.
    It is however the first we've tried to run for this customer.
    I have checked everything I know:
    1) Payment method D selected in the F110 parameters
    2) Payment method D entered in the invoice line item
    3) Payment method D entered in the payment transactions tab on the customer master data
    4) Valid Direct Debit madate exists and check complete
    5) parameters are correct in the F110 selection - company code, payment method, dates, next payment date, invoice is well overdue, it was only entered today but was due back in 2014!, free selection, additional log etc.
    6_ Checked in SPRO in "Payment Method/Country" details and the following are required : Bank details including IBAN required, SWIFT code required, SEPA mandate required. These are all maintained in the customer master data.
    and still the customer invoice I want to pay is show as an exception in the log. In the payment proposal it shows as an exception No valid payment method found. In the log it shows as
    Customer/vendor does not have any allowed bank details Message class FZ Message no. 651
    No permitted payment method exists Message class FZ Message No. 608
    Information re. customer 131275 / paying company code N120 ... Message class FZ Message no. 306
    ... payment not possible because of reported error Message class FZ Message no. 311
    I am at a loss as to where to check next. Please help.
    thanks
    Jemma

    Hi Jenna,
    In the log I can see the message 'SEPA mandate & for bank xxx has been assigned to a contract' FZ788. This means: Mandates with contract cannot be used for the payment of any invoice. The invoice has to be assigned to the mandate or be assigned in the payment run.
    Please check the F1-help of the field 'SEPA Mandate: Contract Type' in the mandate.
    The Note http://service.sap.com/sap/support/notes/1874892 describes the various options.
    Regards,
    Emőke

  • No valid payment method found (T code F110 autoPayment)

    Dear All,
    When we define ranking order in bank determination for auto payment program. System issue no messages otherwise for not defining ranking order system issues error message
    No valid payment method found However, i have define payment method and house bank in vendor master record only.
    Kindly resolve the issue

    hi,
    Kindly check OBVCU whether the house bank has been assigned to payment method and check the tolerance limit for the vendor .

Maybe you are looking for

  • How do i get my catalogs back on light room?

    After burning a disk of photos, I lost all my catalogs.  The photos are still on my hardrive but all my light room catalogs show 0 (except the photos i just burned on the disk). My question is how do i get those photos back into Lr?

  • Intel-based IMAC and Windows 7 PC networking

    Hello there, I'm using both an imac and a pc at my home network. I used to have windows xp installed in my pc and by just sharing some folders, i was able to view and access them from my imac by going to finder and selecting my pc from the list "plac

  • X200 Video Problem?

    I just purchased and received a new X200. Today I was playing (on Itunes) the trailer for Indiana Jones and I noticed a lines across my screen and the video wouldn't hardly play mostly just sound worked. I quit and retryed it and it did the same thin

  • FINALLY, iTunes Store Working

    I have been dealing with Apple, my DSL and Norton for over a month about iTunes Store not loading and telling me I don't have a connection when I did. I went through all the threads etc and Apple and Norton were helping me. I am a teacher and my tech

  • Extending functionality of a button in pagebuttonbar

    Hi, I'm trying to customize "Create Customer" page in R12. The page has "Apply" button in pagebuttonbar. Based on "Profile Class" value entered in the create page, I need to create some child records like customer relationships. For this, I think I n