Quantcast
Channel: SCN: Message List - SAP Business One Integration Technology
Viewing all 973 articles
Browse latest View live

Re: Test conection failed in integration framework

$
0
0

Business One Integration Component

 

Regards,

B.Ivan


Re: Test conection failed in integration framework

Re: Working with two companies

$
0
0

Hi Joris,

 

 

 

As you mentioned, this can be achieved by intercompany solution but intercompany solution always create the draft marketing documents in the recipient company as both the companies may have different Tax structure and various other reasons( Approval Procedure, Custom Add-ons code etc.)

 

 

 

If you enable the multiple Branch feature in SAP Business One, then for your scenario manual intervention is required when you are duplicating the A/R Invoice to A/P invoice as duplication only copies the information on the Contents tab of the A/R Invoice to the Contents tab of the A/P Invoice.

 

Thanks,

Pankaj Sharma

Re: Remove xmlns in xml file

$
0
0

Hi Pierre I have the same scenario, but I cant remove the xmlns="" is there ay way to remove it?

 

Regards

David

Update B1 object, sevt table

$
0
0

Hi all,

 

Question: When i update an B1 Object through B1i, will the sevt table fill in with this object?

 

I want to update a B1 object and after the update, the sevt table must be fill in with this object.

 

Kind regards,

 

Nico

SAP B1 Inetgration with External Application

$
0
0

Hello Experts,

 

I have to integrate SAP B1 with one external application built in .net.

how can i integrate through B1isn.?

There other ways like .net connector or web services which way i should choose and how i can work.
Please provide Documents or links.

 

Regards: Ambesh

Payload from/to B1 in DI API format

$
0
0

Hi people.

This is a simple question from a B1I newbie.

 

How can I acquire in inbound to B1I from B1 the payload in DI API format?

 

I defined the B1 channel as "SAP Business One" but, acquiring, for ex., a sale order, I receive a payload like this 

 

<ORDR>

  <row>

  <DocEntry>387</DocEntry>

  <DocNum>387</DocNum>

  <DocType>I</DocType>

  <CANCELED>N</CANCELED>

  <U_IOE_POG_NRDOC nil="true"/>

  </row>

</ORDR>

<RDR1>

  <row>

  <DocEntry>387</DocEntry>

  <LineNum>0</LineNum>

  <TargetType>-1</TargetType>

...

 

instead of something like this

 

<Documents>, <DocumentLines>, and so on.



Could you help me? 


Thanks a lot

Nicola

Error in SBO COMMON test connection

$
0
0

Hi Experts,

 

Recently i have upgrade our SAP system to 9.2 Pl 02,

 

While i try to test connect

 

 

Connect to SBO-COMMON(B1DI) failed

Detailed Information

com.sap.b1i.adapter.dia.exception.ConnectionFailedException: Connect to Business One failed.

(-8012) Company version mismatch

{b1Server=RJSQL\SQL01, company=SBO-COMMON, licenseServer=RJSQL:30000, dbType=7, dbUser=sa, userName=B1i}

 

 

Regards


Re: Error in SBO COMMON test connection

$
0
0

I have check the SAP version and Diapi version are same 9.2 pl 02

 

Any idea why the error is..

 

Rgds

Re: Order Draft only reachable via Query & not visible in Drafts' report SAP Business One Intercompany Integration

$
0
0

Hi Yoni,

 

In document draft report,Select user as B1i or All and Select Open Only check box.

Also ensure you have selected the correct date filter, if you are applying.

 

Thanks,

Pankaj Sharma

Re: Payload from/to B1 in DI API format

$
0
0

Hi Nicola,

 

at the SAP Business One Inbound the retrieval can be customized by parameter Retrieval Mode, please compare with the documentation (Help --> Online Help: search for SAP Business One Inbound):

To define the inbound definition retrieval of a scenario step, select Scenarios Scenario Step Design [Inbound] [Retrieval]. In the retrieval section, you define how you want to retrieve the data from SAP Business One.

To control inbound processing, the integration framework uses the following parameters:

Parameter

Definition

Retrieval Adapter

DI API, Service Layer or JDBC

Retrieval Type

●      For DI API, you can select either Object or Service.

●      For Service Layer, you can currently select Object.

●      For JDBC, select SQL

If you want to retrieve more than one object, you cannot use the SQL retrieval type.

Retrieval Mode

For DI API, you have the following options:

●      All with File Names (AllNodes)

Exports to XML all fields, both read only and read/write fields from the database

●      Read/Write with Field Names (ValidNodesOnly)

Exports to XML only valid fields that support XML import (read/write fields only) from the database

●      All with Public Properties (NodesAsProperties)

Exports to XML all fields as properties from the database. This is the default.

●      Read/Write with Public Properties (ExportImportMode)

Exports to XML only valid fields that support XML import and export (read/write fields only that do not contain null values) from the database

Retrieval Control Document

  1. n.a. (not applicable)

Retrieval also for Del Events

To additionally receive delete events, select the checkbox. This option is only relevant for the DI API retrieval adapter.

 

Per default and if left empty the DI API retrieval is done by "NodesAsProperties" which is the object definition according to structure documented in Help --> B1 DI-API Object. If you switch the parameter to "AllNodes" or "ValidNodesOnly", you're getting the object retrieval with the B1 database fields.

 

Just change the  retrieval mode of your B1 Inbound definition and reactivate your scenario.

 

Best regards

Bastian

Re: Update B1 object, sevt table

$
0
0

Hi Nico,

 

per default the technical B1 user for your B1 company database as maintained in the SLD B1DI section of the integration framework (B1i), is excluded from the B1 eventing mechanism to avoid endless loops.

You could explicitly allow this technical user (B1i) to create B1 events via SEVT table, therefore check the options documented and shown in Maintenance --> Cfg B1 Event Filter.

 

Best regards

Bastian

 

P.S.: an alternative is to work with a successor step.

Re: B1i sql call with for xml

$
0
0

Hi Nico,

 

for more comprehensive SQL statements, please use the option to handover the statement from a predecessor XFORM instead of using the editor in the SQL atom itself.

Please check documention Help --> Online Help: search for Call SQL Atom and check for handover Entering an Atom Identifier

 

1.1 Options for Providing SQL Statements

To provide the SQL statement or statements in the Default SQL Statement field, you have the following options:

 

Directly Entering the SQL Statement

Directly enter the SQL statement or statements in the input field.

Enter, for example, #select ItemCode, ItemName as &apos;Name&apos; from OITM where ItemCode = &apos;A00003&apos;

 

If a value in an SQL statement contains a ‘ (single quote), for example, ’23’5’, the SQL statement does not interpret it correctly and only considers ’23’. The SQL call fails. To hand over the correct value, double the single quote: ’23’’5’

 

Alternatively, use the utils2:handleSQLString(string()) function when providing the SQL statement in an XSL transformation atom. For more information about handling single quotes, see section 7 Preventing SQL Injections

 

If a database contains special characters in tables that are not Latin, but for example Hebrew, use the Ncharacter in the WHERE clause of an SQL statement to include the special characters.

 

Enter, for example:

SELECT T2.E_MAIL as FromEmail FROM OUSR as T2 WHERE T2.USER_CODE=N'$userid'

 

Entering an Atom Identifier

Enter the name of an XSL transformation atom that contains the SQL statement or statements. Enter, for example, #atom4.

 

In atom4, provide the SQL statement in the <sql> tag, for example:

<sql xmlns="">select ItemCode, ItemName as &apos;Name&apos; from OITM where ItemCode = &apos;A00001&apos;</sql>

 

The procedure also supports you in processing large SQL statements. For more information, see section 6 of the document

 

Entering an XPath Statement

Enter an XPath that points to the SQL statement in the XSL transformation atom.

 

Enter, for example, /vpf:Msg/vpf:Body/vpf:Payload[./@id=&apos;atom4&apos;]/xpath

 

The XPath points to the <xpath> tag in atom4 that contains the SQL statement. atom4 is an XSL transformation atom.

 

In atom4, enter the SQL statement in the following way:

<xpath xmlns="">select ItemCode, ItemName as&apos;Name&apos; from OITM where ItemCode = &apos;A00002&apos;</xpath>

 

If values in an XPath statement contain a string that starts with ! (exclamation mark) and ends with _ (underscore), the integration platform (B1iP) interprets it as a variable and the SQL statement does not work. To avoid errors at runtime, do not enter the XPath statement in the input field. Instead, enter the transformation atom identifier, for example, #atom4. In the XSL transformation atom, enter the statement in the <sql> </sql> tag.

 

To avoid out of memory errors at integration framework runtime, the integration framework in general reduces SQL statements to 1000 characters in the return payload.

 

optionally you could also handover by Entering an XPath Statement.

 

Best regards

Bastian

Re: Cannot receive messagges in step triggered from predecessor

$
0
0

Hi Luca,

 

we're planning to fix it with an upcoming release.

 

Best regards

Bastian

Re: Scenario step inconsistency, step name is part of another step name (sap.MobileCacheRefreshW)

$
0
0

Hi,

 

it's a warning message, as it's not recommended to have one step's name as part of another step's name running in the same scenario package.

Please definitely avoid it if both steps are defined as queue inbound or predecessor inbound.

 

As in the sap.B1Mobile scenario package step "sap.MobileCacheRefreshW" is the only queue inbound step, you can ignore this warning.

 

best regards

Bastian


Re: B1iSN9.0_Connect to HTTA failed: HTTP-Code: 401;message:Unauthorized

$
0
0

Hi,

 

I assume your http call needs an authorization.

If not please fill parameter "authentification" with "none". If your company is working with a web proxy, please fill it accordingly, please also check the firewall settings.

 

Best regards

Bastian

Re: Payload from B1 in table format instead of DI API

$
0
0

Hi Nicola,

 

please check the retrieval mode in the inbound definition, for DI API, you have the following options:

  • All with File Names (AllNodes)

          Exports to XML all fields, both read only and read/write fields from the database

  • Read/Write with Field Names (ValidNodesOnly)

          Exports to XML only valid fields that support XML import (read/write fields only) from the database

  • All with Public Properties (NodesAsProperties)

          Exports to XML all fields as properties from the database. This is the default.

  • Read/Write with Public Properties (ExportImportMode)

          Exports to XML only valid fields that support XML import and export (read/write fields only that do not contain null values) from the database.

 

The green marked retrieval modes are using the DI object structure, the red ones are using the database fields structure.

If nothing is entered explicitly, All with Public Properties (NodesAsProperties) is defaulted.

 

Best regards

Bastian

 

P.S.: please compare it with actual documentation of Help --> Online Help, search for SAP Business One Inbound.

Re: Problem about define receiver system filter

$
0
0

Hi,

 

please check the syntax of your xpath.

 

Following is taken from the receiver filter documentation:

Configuring Receiver Filter Definitions

To exclude receiver systems for some scenario steps or to define a condition, under which the integration framework sends messages, select Maintain Sender Filter Definitions. The integration framework displays all scenario steps, each with all applicable and selected receiver systems. You have the following options:

●      To exclude a receiver system for a scenario step, enter no in the input field or deselect the scenario step.

●      To define a condition for a receiver system and a scenario step, enter the XPath expression in the input field. You can use the $msg variable for the incoming sender message, for example,$msg/root/@flag=’A’.

NOTE

To use individual namespaces, define them in scenario step design.

 

Capture.PNG

Namespace

If the step uses an individual namespace, click the button to display the namespace.

 

 

 

Filters are normally defined based on the sender payload and not by the Header information of the message.

 

Best regards

Bastian

 

P.S.: /vpf:Msg/vpf:Header/vpf:ReceiverList/vpf:Receiver[./@handover='P']/@Id is only relevant if the scenario step is running on receiver side: It marks the actual receiver of the message, an additional filter would probably have no extra benefit.

No Scenario Step (vBIU) Assigned for Step for Sender System (SysId)

$
0
0

Dear Gurus,

My SAP B1 version is 9.1 PL09 32-bit, and the version of Intercompany Add-on 2.0.16.0

The intercompany Solution work fine on my testing environment for over 2 week, but yesterday it crashed. I have checked these thing and everything and it all working, but there are still no transaction are synced:

-          Connection to JDBC, B1DI are connected

-          Event sender working fine

-          All service are turned on

When I look up to Message log, the transactions status are filtered and stuck, with the message : “No Scenario Step (vBIU) Assigned for Step for Sender System (SysId)”.

As going though some theard, I need to setup in Scenarios -> Setup/Step design, but I am not sure what to do here in case of Intercompany Scenario.

Please give me advice or any document related to this situation.

Many thanks.

Re: Cannot connect to SAP Business One Integrated Service

$
0
0

Thanks, this solved my problem as well!

Viewing all 973 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>