No Procedure defined for service 4GL Error

Sort:
You are not authorized to post a reply.
Author
Messages
Robert
Veteran Member
Posts: 82
Veteran Member

    My 4GL successfully calls PERFORM 1000-CHK-WF-STATUS.

    If I have the documentation right,
    I am supposed to invoke 1000-WF-SERVICE, passing
    WFAPI-I-SEVICE and at least WFAPI-I-CRITERION-1.

    Working through debug/batchanim
    I arrive at the following code block:


    "WORKFLOWSERVICEINQUIRE" USING
    WFAPI-I-PRODUCT-LINE
    WFAPI-I-SERVICE
    WFAPI-I-CRIT-1-15
    WFAPI-I-CRIT-2-15
    WFAPI-I-CRIT-3-15
    WFAPI-I-OBJECT-NAME
    WFAPI-O-PROCEDURE
    WFAPI-O-ROLE
    WFAPI-O-AGENT
    WFAPI-O-LOG-METRICS
    WFAPI-O-RET-MSG
    WFAPI-O-RETURN-CODE.

    Immediately after this block exeuctes:

    WFAPI-O-RETURN-CODE = 8
    WFAPI-O-RET-MSG = No procedure found for service

    Based on the docs, I only need PRODUCT-LINE, SERVICE and at least one criteria.
    To me...it sure looks like OBJECT-NAME is also required.
    The remaining variables are what should be initialized if  1000-WF-SERVICE is successful.

    I am able to generate a trigger through PFAdmin and WFWK without error.
     

     

    John Henley
    Senior Member
    Posts: 3348
    Senior Member
      Did you attach the flow to the service in the admin pages (e.g. /bpm)?=
      Thanks for using the LawsonGuru.com forums!
      John
      Robert
      Veteran Member
      Posts: 82
      Veteran Member

        John -

        I added the flow to System Data View,
        Flow Definition.

        Under Services, Services Process Definition, I added PROCESS NAME, which matched the Flow Definition
        Then I added the Event Type:  EVT_PFLOW.

        Based on your response, I fear I did not add it.
        Is the Flow Definition a complete path, or just the prefix of the ProcessFlow file name?

        John Henley
        Senior Member
        Posts: 3348
        Senior Member
          If you properly uploaded the flow via ProcessFlow designer, the name of the flow should be in a dropdown list.

          Thanks for using the LawsonGuru.com forums!
          John
          Robert
          Veteran Member
          Posts: 82
          Veteran Member
            John:

            In this version, 9.1.4, the flow is not presented in a drop down.

            Confirm the flow loaded:
            If I navigate to System Data Views, I have to select the > character - and I see the flow I loaded to the server.

            This is what I did to assigne the Flow to the Service.
            Then I navigate to Services; Services Process Definition, Select line A, then in the Process Name field,
            I select the > character which presents the flow. I add the flow, then assign the EVT_PFLOW Event,
            the select Process.
            John Henley
            Senior Member
            Posts: 3348
            Senior Member
              That is the correct procedure...I should have said "selection list" (i.e. PF server "knows" about the flow) not dropdown list.

              Thanks for using the LawsonGuru.com forums!
              John
              Robert
              Veteran Member
              Posts: 82
              Veteran Member
                John:

                This was the remedy in my situation.
                When I defined the service, I defined one criterion, COMPANY.
                I added the following statement to my WFAPI moves:
                005000 MOVE "COMPANY" TO WFAPI-I-CRITERION-1.

                And the flow fired!
                Vikram Raghava Reddy
                Basic Member
                Posts: 6
                Basic Member
                  Hey Robert,

                  I am getting "XXXXX Service not defined" error. The service is defined in Landmark and enabled. I am trying to call the service using WF APIs. I am passing all the Criterion and the same has been used in the LMRK Service. Please provide a solution to resolve this?


                  Thanks,
                  Vikram
                  You are not authorized to post a reply.