Using Calculation Action in BLS Transaction

I'm trying to pass the values of two tags in a tag query into a calculation action in a BLS transaction and add the two values together.  I'm linking the action result property to the expression that does the calculation.  When I click on the 'Evaluate' button in the link editor I get the correct result but the action result itself is always zero and zero gets passed into my next action block.  Any ideas?  (I'm using xMII 11.5 SP3)

Thanks, Jeremy.  The variables coming out of my tag query are doubles.  I'm not sure how to tell what the data type of the calculation "result" variable is.
My result variable for each calculation always seemed to be zero (I mean I would hover my mouse pointer over "result" and I'd see a zero).  I decided to write my results out to a text file and it looked OK so I'm not sure why I was seeing zeroes in the link editor.
In any event, my output from the transaction seems to be OK so I'm ready to declare success and move on.
David

Similar Messages

  • Posting an XML Variable to a BLS Transaction from a web page

    I am working in xMII 11.5 with all the latest service packs. I know this is probably a really basic question but I am stumped.
    I am trying to pass a multi row and multi column XML data set from a web page into a BLS transaction (actually, two of them) in order to populate the parameter. I want to use the Web Service interface to the transaction. I have tried using parameters on an Xacute Query in an Applet as well with an equal lack of success. I cannot persuade the transaction to see the incoming variable as an XML data type. I have tried encoding and decoding and string to xml conversions and nothing seems to successfully allow the data set to be seen withing the BLS as anything but a string. The String to XML action will not handle the number of columns in the dataset though it seems to work if the data set has only one column. The data set is formatted in the proper "Rowsets/Rowset/Row" format. I have considered writing the data to an XML file on the server (I know I can deal with that) but that is not acceptable in this application.
    Can someone share the secret with me?
    ...Sparks

    Parameter value:
    r1d1,r1d2,r1d3;r2d1,r2d2,r2d3;r3d1,r3d2,r3d2
    Pass thru String List to Xml Parser with delim ";"
    <Row>
    <Item>r1d1,r1d2,r1d3</Item>
    </Row>
    <Row>
    <Item>r2d1,r2d2,r2d3</Item>
    </Row>
    <Row>
    <Item>r3d1,r3d2,r3d2</Item>
    </Row>
    Repeat on each row/item and pass thru String List to Xml Parser with delim ","
    <Row>
    <Item>r1d1</Item>
    </Row>
    <Row>
    <Item>r1d2</Item>
    </Row>
    <Row>
    <Item>r1d3</Item>
    </Row>
    Of course, your columns aren't flat but they are easy to ref, to get "column 2" for example:
    StringListToXml_1.Output{/Rowsets/Rowset/Row[2]/Item}
    So now you have rows and columns. Assign your data to your BAPI structured as needed.
    We have passed complex XML via the SOAP interface in 11.5, but it involved some "hacks". Basically we passed the sterilized XML via a String Type Parameter, and then unserialized it inside the BLT.  
    I have been told on this board that there is a solution to passing XML data vie the SOAP interface using ref docs, but i have never personally seen a working example.

  • IDOC Listener not calling BLS Transaction

    All,
    I am running xmii 11.5.4.  I have a single IDOC Listener configured with a Routing Rule for Message Type = "PROCESS_MESS_DOWNLOAD".  The Routing Rule is defined to trigger a BLS called "TEST_BLS".  The Listener is configured with the BLS Input Parameter.
    The Listener processes the incoming message by writing the XML file to the defined Path with no problems.
    The issue is the BLS Transaction will not trigger.  The Transaction has a single Transaction Property of data type XML with no default value defined.
    I have tried using a simple Transaction with nothing but an Event Logger or XML Trace actions to verify the Transaction is being executed. But nothing occurs.
    I have viewed the General Log and see no errors or warnings or fatal log entries.
    The Transaction works fine manually from inside Logic Editor and even runs from a URL invokation.
    Any ideas of what to look for or try would be greatly appreciated.
    Thanks,
    Chuck

    Udayan,
    The Transaction consists of only an Event Logger Action and an XML Tracer Action.  Neither of these are apparently executing.  No event is logged and no entry is made to the XML Tracer file. The Transaction has a Transaction Property defined as stated in my first post.
    I have noticed through trial and error that the IDOC Listener only works with the asterick message type.  The actual message type of the IDOC is evidently not being read by the Listener.  The IDOC being created is coming from a PPPI Process Message.  The first few lines are:
    <?xml version="1.0" encoding="UTF-8"?>
    <PROCESS_MESS_DOWNLOAD>
    <INPUT>
    <CLIENT>200</CLIENT>
    </INPUT>
    <TABLES>
    <MSEL>
    <item>
    <MSID>100000000000000537</MSID>
    Thanks,
    Chuck

  • WebService action in BLS

    I exposed a BLS transaction using
    http://<server:port>/XMII/WSDLGen/<transaction name>.
    Is it possible to communicate with this transaction through a WebService action  block in another transaction.?
    I have successfully used the WebService action block to communicate with a Java WebService hosted in axis2 environment.
    Please help
    Thanks and Regards,
    Rajath

    Thanks Michael
    I have a simple transaction which writes a file in to some location. I exposed this transaction using WSDLGen. And configured a BLS WebService action using the above URI in another transaction.
    When i executed the second transaction, i got an error : "Error invoking WebServer Action:null".
    I have given the sufficient security permissions to both the transactions and had also give the login credentials with admin privilege. What could be wrong???
    Any help?
    regards,
    Rajath

  • Follow up task without using the action profile

    Hi,
    Is it possible to create the follow up task without using the action profile? If so, please let me know how we can do that?
    as per the requirements, i have to the custom coding that will automatically create follow-on task triggered by status change on the all the transaction type. Please guide me how can we do that.
    Task details (task id, description), I'm reading it from the custom table.
    Thanks for your help.
    Regards,
    Vaibhav

    Thanks Naresh for the response.
    Not sure if I can use the CRMV_EVENT. Even I'm not aware how to use that. Let me tell what i am doing in the logic.
    - implementing the logic in the badi order_save (method - CHECK_BEFORE_SAVE)
    - get the header and item details using the FM CRM_ORDER_READ.
    - get the status of header / item from the output of CRM_ORDER_READ.
    - compare the status with the custom table (having info of hearder type, item type, status, tast id, task description etc)
    - if status is different, create the task using the details from the custom table.
    now i want to write the logic to implement the last step. Do we have any standard FM where I can pass the task ID and it will create the task? Please help.

  • Output Parameters - BLS Transaction

    Hi,
    i set an input and output parameter in BLS transaction. Output parameter mapped with write_file.success. i call this transaction via xacute query. i am sending input parameters successfully. the file created. but i want to know at front end via writefile_success. how to call this output parameter via applet? i tried document.<my applet>.getQueryObject().getParam(1). but it shows no object like this. how to do it?
    -senthil

    Hi Senthil,
    If you need a output parameter of a bls from front end.You need to create and Xacute query for that transaction and in the html add the query as a iCommand applet and after executing the applet,Use the line below  to get output parameters of the BLS.
    document.iCommandAppletName.getValue(COLNUMBER,ROWNUMBER)
    Regards,
    Ravi Kumar

  • BLS transaction execution time

    When I run a BLS transaction,  its execution started time is 4 hours ahead .  I looked at my xMII server time and it is OK .  What should be happening ?

    Thanks michael,
    In fact,  it seems that the problem is in the SERVLETEXEC service  . In the system properties option  windows at the bottom one can change the user time zone option .
    I will let you know if this is the right solution .  By the way,  how can I change the user and password for the SERVLETEXEC application . You can acces this application by using the  http://localhost/servletexec/admin in you xMII server URL .
    Best Regards,

  • Creating a Work Order List with a BLS Transaction

    I'm trying to create a list of work orders at a specific plant with a BLS transaction.  I'm running 4.6c.  I'm having trouble finding a BAPI that I can use for this.  The BAPI list in BAPI Explorer seems rather abbreviated when it comes to plant maintenance functions.  Any ideas?

    I did find one BAPI that looked promising 'BBP_PMORDER_GET_LIST' but unlike other BAPI's that had an INPUT section and an OUTPUT section, this one just had a TABLES section (and I couldn't find any documentation with it)
    What is involved in creating a custom BAPI?
    (We'll be on ERP2005 next spring so these 4.6c issues are temporary.)
    I appreciate your help with this.

  • Lag when calling BLS Transaction from within another

    Using MII 12.0.
    In MII class, they told us a "best practice" was to check the "Reload Transaction after Execution" box in the configuration of a Transaction call within a BLS.  The reasoning behind it was that should this not be checked, a previous result of that called BLS transaction would still be cached in memory and used instead of the newly assigned values from within your calling BLS.
    Checking the "Reload transaction after Execution" box forces MII to reload that transaction when it is called.
    In time analysis, what has been noticed is that there's a significant - up to 9 seconds - lag time when one BLS calls another BLS.  On a time-sensitive operation, that is an eternity.  That amount of overhead defeats any hope of using common code libraries.
    Questions -
    1.  Is this a true "best practice", or is it one that adds unnecessary overhead to a BLS? 
    2.  If the calling BLS executes 1 time - but is subject to be executed multiple times over a certain interval - is checking the Reload box of the BLS it is calling unnecessary? 
    3.  Even if you pass new data each time you call that BLS, is it still going to use/return whatever data it has cached until the cache expires?
    4.  Is there another way to ensure that the called BLS uses the data you pass it (and returns the corresponding result set) without incurring the amount of overhead that we have noted? 
    Thanks

    The version we're on is 12.0.6 Build 13, and moving to  12.1 (something I am not directly involved in).  In this version, I'm not seeing the menu options you describe, so it's apparently in 12.1 or later. 
    The issue we are having if the "Reload transaction after execution" box is not selected is indeed caching of values. 
    For example -
    BLS1 runs every 5 minutes
    BLS2 is called from BLS1, and in this case, retrieves error log info from a table - a common module used by several BLS's.
    BLS3 is also called from BLS1, and in this case, writes to an error log using information retrieved from BLS2 from within the execution of BLS1.  BLS2 & BLS3's calls are in 2 separate sequences, one after the other. 
    If BLS2 & BLS3 DO NOT have the "Reload Transaction after execution" checked, each will run with whatever the cached data in memory is for them, even though inside BLS1 I am assigning values to the input of BLS1 to send to BLS2, and passing the returned data from BLS2 into BLS3.  Unless it's checked, BLS2 & BLS3 would continue to be called, however, it would be with whatever data has been cached for them. 
    If that "Reload" switch is checked, it will reload each transaction & call it with whatever data is being passed.
    This was mentioned in the MII class I was in also.  This is a generalization, but the way they described it was being similar to how you might save a web page to your local PC, and that unless that page is refreshed & changed, that from that point on, every time you brought up your saved web page, it would always display the same values in it.  They didn't go into great deal to explain the mechanics of it, but MII would only load it the first time it executed, and that unless you forced it (by checking the Reload switch), it would always execute using the same cached values no matter what you were passing.

  • Executing BLS Transaction through Xacute query template?

    Hi Experts,
    Am having a SQL query template for which am passing value from web page after user input and i have added this SQL in my BLS transaction in illumSQL action block. I have created Xacute query template and display template(iGrid) for displaying output from transaction.
    Problem am facing is that am not able to execute my transaction after passing values to SQL query. How to get this working?
    Regards,
    Ravi Shankar

    Hi som sarkar,
    Let me explain my problem this way, let say am having SQL Fixed query and am doing some field selection based on the parameter which is been passed to the query template.
    -Checked the query template returning values, working good.
    created one Display template to display whatever been fetched by query template(iGrid).
    -Generated applet working good.
    Now if i pass the parameters from webpage to SQL query(parametes are mapped in query template) and update the grid, it should work right but its not...
    Thats what i was trying to ask you so far.
    Regards,
    Ravi Shankar

  • XML INPUT parameter in a MII BLS Transaction

    Hi.
    Please anybody has some good XSD file that can be used as a data type for a xml input parameter of a BLS Transaction ? could share it with us ? I will use it as a sample to create my own XSD file.
    Until now, all XSD files that I created worked but I could not import the webservice on ECC.

    Hi Stephen Kuykendall, thank you.
    I still have to following error message when try to execute the webservice in wsnavigator:
    [location : http://srvsdmii01.malwee.com.br:50000/XMII/WSDLGen/Default/teste2] ERROR : Definition of /definitions/types/s:schema/s:complexType[1]/s:sequence/s:element/s:complexType/s:sequence/s:element is not correct. Missing top level component (uri: 'http://schemas.xmlsoap.org/wsdl/'; name: 'GET_DETAILS').
    I created a XSD file and put your xsd contente there:
    so, I created a transaction propert of type "Input" with Data Type "xml" and assined your XSD with the element "GET_DETAILS":
    The WSDL url (/XMII/WSDLGen/Default/teste2) generated the wsdl with the following content:
    <?xml version="1.0" encoding="UTF-8"?><definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://www.sap.com/xMII" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://www.sap.com/xMII">
        <!-- Types -->
        <types>
            <s:schema elementFormDefault="qualified" targetNamespace="http://www.sap.com/xMII"><s:import schemaLocation="http://srvsdmii01.malwee.com.br:50000/XMII/WSDLGen/db/Default/WEB/Entrada.xsd"/>
                <s:complexType name="InputParams">
                    <s:sequence id="InputSequence">
                    <s:element maxOccurs="1" minOccurs="0" name="P_Entrada"><s:complexType><s:sequence><s:element ref="GET_DETAILS"/></s:sequence></s:complexType></s:element></s:sequence>
                </s:complexType>
                <s:element name="XacuteRequest">
                    <s:complexType>
                        <s:sequence>
                            <s:element maxOccurs="1" minOccurs="0" name="LoginName" type="s:string"/>
                            <s:element maxOccurs="1" minOccurs="0" name="LoginPassword" type="s:string"/>
                            <s:element maxOccurs="1" minOccurs="0" name="InputParams" type="s0:InputParams"/>
                        </s:sequence>
                    </s:complexType>
                </s:element>
                <s:complexType name="Rowset">
                    <s:sequence>
                        <s:element maxOccurs="unbounded" minOccurs="0" name="Row" type="s0:Row"/>
                    </s:sequence>
                    <s:attribute name="Message" type="s:string"/>
                </s:complexType>
                <s:complexType name="Row">
                    <s:sequence id="RowSequence">
                    <s:element maxOccurs="1" minOccurs="1" name="P_Saida" type="s:string"/></s:sequence>
                </s:complexType>
                <s:element name="XacuteResponse">
                    <s:complexType>
                        <s:sequence>
                            <s:element maxOccurs="1" minOccurs="0" name="Rowset" type="s0:Rowset"/>
                        </s:sequence>
                    </s:complexType>
                </s:element>
            </s:schema>
        </types>
        <!-- Messages -->
        <message name="XacuteSoapIn">
            <part element="s0:XacuteRequest" name="parameters"/>
        </message>
        <message name="XacuteSoapOut">
            <part element="s0:XacuteResponse" name="parameters"/>
        </message>
        <!-- Ports -->
        <portType name="XacuteWSSoap">
            <operation name="Xacute">
                <input message="s0:XacuteSoapIn"/>
                <output message="s0:XacuteSoapOut"/>
            </operation>
        </portType>
        <!-- Bindings -->
        <binding name="XacuteWSSoap" type="s0:XacuteWSSoap">
            <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
            <operation name="Xacute">
                <soap:operation soapAction="http://www.sap.com/xMII" style="document"/>
                <input>
                    <soap:body use="literal"/>
                </input>
                <output>
                    <soap:body use="literal"/>
                </output>
            </operation>
        </binding>
        <!-- Service mapping -->
        <service name="XacuteWS">
            <port binding="s0:XacuteWSSoap" name="XacuteWSSoap">
                <soap:address location="http://srvsdmii01.malwee.com.br:50000/XMII/SOAPRunner/Default/teste2"/>
            </port>
        </service>
    </definitions>

  • What is the difference between action and workflow? How do I decide that I need an action in a transaction and not a workflow and vice versa?

    Dear Experts,
    I have few doubts and request your expert inputs to clarify my doubts.
    What is the difference between action and workflow? How do I decide that I need an action in a transaction and not a workflow and vice versa?
    Your earliest response is highly appreciated.
    Thanks,
    SMTP

    Hi SMTP,
    First of all, as I mentioned action is nothing but an executable work item which is designed in the workflow itself. In other words, Workflow is like your OOPS class. At run time, workflow instances are created just like objects of classes. Now, the steps designed in the workflow are called TASKS and the instances of tasks are called WORKITEMS. Now, the work items where any user action is required are called executable work items. ANd the work items where no user action is required (for example, sending an email in background) are called non-executable work items.
    Whether to go with development of workflow or not depends upon your business scenario. If your requirement is only to send an email and you find any BAdi or exit where in you can write your logic then there is no need of creating a workflow. If there is a defined business process with defined users and time lines, then you can go with the development of workflows.
    Rest, the below link will help you in understanding basic concepts of workflow :
    Why use SAP Workflow? | Insight Consulting Partners
    Regards,
    Richa

  • BLS Transaction

    Hi Experts,
    I used BAPI_SALESORDER_GETLIST IN BLS transaction to fetch the sales oder Number.it shows no erros , but  not able to get values of the sales order in the specified path in the xml format.
    But when i used BAPI_BANK_GETLIST it is working fine.
    Thanks
    Latha

    You may also find it in BAPI Explorer (transaction code BAPI).  I usually start with the BAPI Explorer and do my testing there before doing any work with it in xMII even if I am already familiar with the BAPI. 
    One other item that you need to be aware of (and this may be the problem you are encountering).  While inside the ERP system, SAP does not require you to put the leading zeroes in front of internal numbers.  However, many of the BAPIs do not automatically set them for you.  Some do.  Most, in my experience, do not.  So if you are looking up something for a Material Number, you have to pre-pend the leading zeroes so that the Material Number is 18 digits in length.  Batch numbers need to be 12, process or production orders, 10 and so on.  NOTE: this applies if you are using standard SAP numbering conventions instead of a custom method (which may include alphabetical characters). 
    Another helpful method is to look at the equivalent internal transaction.  If you can find the records of a successful internal transaction, then you can often figure out what is missing from your external BAPI call.
    Hope this helps,
    Mike

  • How to log the exception using Log action in Oracle Service Bus

    Hi,
    Whenever an exception is raised how to log the exception using Log action in oracle service bus.After logging where I have to find the logged message.

    It would be in the log file for the managed server which ran the request. If you are logging the message at a lower level than your app server, however, you won't see it. You should be logging the exception at Error level.

  • How to use same actions for differ pop-up

    Hi gurus,
    I am using 2 popup in a view.same popup's having same buttons 'Yes', 'No'.when i use 1st one i have to create an action for that Yes button where i put my code for that particular Action.
    But when i used 2nd one the action define for that is not acceptable with differ name.it takes only standard one.
    Now my Query is : How to use same actions for differ pop-up buttons with in a similar view?Where i put my code.
    Plz sugges me.
    <b>Points will be sured.</b>
    Sanket sethi

    Hi,
    Take one integer value attribute in the context of view
    when you r performing action on POP1 set it's value to 1
    when you r performing action on POP2 set it's value to 2
    create one method which receives integer argument, say diaplay(int a)
    In the action call display(wdContext.currentContextElement().get<intvariable>()) by passing the value in the context attribute
    in display() method, Check the value of integer variable..
    if it is 1 then perform action related to POP1
    if it is 2 then perform action related to POP2
    Regards
    LakshmiNarayana

Maybe you are looking for

  • Upgrade Click to Run Version Older than 15.0.4569.1507

    We currently have an Office 365 installation older than 15.0.4569.1507 on all our SOEs These SOEs are managed by Windows Intune & we want to manage the Office updates ourselves. We've created an Intune package that we know executes correctly with the

  • Type Mismatch using Implicit Cursor

    The actual error I get is PLS-00386: type mismatch found at 'EMP_REC' between FETCH cursor and INTO variables I have copied the code in below (taken some logic out to make example easier). I think the problem is with the EMP_REC CHILDKNOWDES declarat

  • ABAP dump while running the tcode MIGO

    Hi All, I am getting the abap dump while running the tcode MIGO when I searched I got two relevant sap notes but our functional team said that its not applicable in our case. Please find the details of ST22 analysis-: Runtime Errors         MESSAGE_T

  • How to play Time capsule's video on Apple TV without a Mac ?

    greetings, I want to know if it is possible to stream a video on AppleTV 3 a with a Time Capsule. Many thanks.

  • Montioring Dates for Services

    My scenario is that i will create Services PR through Activities,through External Processing and accordingly PO. Now ,there are various deadline dates for each of these service activities entered services as per the contract with the vendor. The cust