Forum Replies Created
-
AuthorPosts
-
May 11, 2006 at 11:51 AM in reply to: a listen with an activatable receive cannot have a timeout #13545
Within the listen shape i have a recieve shape and a delay shape followed by a construct message on either sides followed by a send shape.
Recieve = Activate – True
Initialising correlation – requestcorrelationset
Delay = new System. Timespan (0,5,0,0)Thanx SAM , but i have to do it with UpdateGram and not by the StoredProcedure. i also inserted the data through UpdateGram’s Insert option and not by the StoredProcedure. so how can i update usind the UpdateGram’s UPDATE option. any suggestions??
Hey i want to receive an XML file and update some information on the basis of that file in the SQL database table. can any body give me some scenario.
i have inserted records with this procedure by creating a schema through Add genarated items and selected Insert in the UpdateGram. i works fine . but plz tell me how can i UPdate a record with this method.Regards,
JanMay 11, 2006 at 1:00 AM in reply to: a listen with an activatable receive cannot have a timeout #13547Im not quite sure I understand here what you’re building. Can you describe exactly what shapes you have inside each of your listen branches and how you configured each one?
(example: you have a receive shape with X and Y properties set and a delay shape on the other with Z value)
i think it doesnt work well with xp…..u might need windows server 2003.
[quote=\”nwalters\”] >>The maps magically run or not depending on the root element and target namespace of the data received.
What mechanisms do you use to effect this? (only flag is the case of the \”m\” letter).
One alternative is to put a map on the receive port. You could pick your favorite format (long or short) and map all messages to that format.
A common example is that a company receives orders from companies x, y, and z. Each company sends orders in a different format.
So you could have 3 maps on the same receive port. You would create a common order internal format for your company. The maps magically run or not depending on the root element and target namespace of the data received. If none of the maps match, the message will just be passed on \”as is\”.
When the messages goes to the send port, it will have already been transformed to your common (internal) order format.
This is how we processed orders at my former client, it worked very nicely.
Neal Walters
http://Biztalk-Training.comI’ve created a functoid but It has a problem. :).
If I paste the code (just the class) beneath in a console application, it works fine so it has to do with the functoid.I’ve created a strong key.
I have submitted the \\obj\\debug\\*.dll to the GAC and also placed it under \\mapper extensions in the biztalk folder.
Then added the functiod to the toolbox, selected the *.dll from \\mapper extensions.This is the code from the functoid:
——————————————-namespace GenerateOrderIdFunctoid
{
public class CreateOrderID :BaseFunctoid
{
public CreateOrderID()
{
this.ID = 6002;
SetupResourceAssembly(\”GenerateOrderIDFunctoid.Resources\”, Assembly.GetExecutingAssembly());
SetName(\”Name\”);
SetDescription(\”Description\”);
SetBitmap(\”icon\”);
this.SetMinParams(0);
this.SetMaxParams(0);
SetExternalFunctionName(GetType().Assembly.FullName, \”GenerateOrderIDFunctoid.CreateOrderID\”, \”OrderID\”);
this.Category = FunctoidCategory.DatabaseLookup;
this.OutputConnectionType = ConnectionType.All;
}public string OrderID()
{
//connectie
string connectionString = \”Server=AWS00293\\\\STAGE;Database=OrderSysteem;User ID=ASPNET;Password=”;Trusted_Connection=YES\”;
SqlConnection conn = new SqlConnection(connectionString);
SqlDataAdapter dataAdapter = new SqlDataAdapter();
SqlCommand command = new SqlCommand();dataAdapter.SelectCommand = conn.CreateCommand();
dataAdapter.SelectCommand.CommandText = \”SELECT TOP 1 OrderID FROM dbo.Orders ORDER BY OrderID DESC\”;
DataSet ds = new DataSet();
dataAdapter.Fill(ds, \”LastOrderID\”);//data uit dataset halen
DataTable dataTable = ds.Tables[0];string id = \”\”;
//Standaard op 1, is er geen order, dan begint men vanaf 1
Int64 followingNumber = 1;foreach (DataRow dataRow in dataTable.Rows)
{
id = dataRow[\”OrderID\”].ToString();
id = id.Substring(5).Trim();
followingNumber = Convert.ToInt64(id);
followingNumber++;
}//we hebben nu zowel id als followingNumber
string word = \”order\”;
string dump = followingNumber.ToString();
for (int i = 0; i < 10 – dump.Length; i++)
{
word += \”0\”;
}
return \”\” + word + followingNumber;
}
}
}
————————
This is the error:———————
XlangUncaught exception (see the ‘inner exception’ below) has suspended an instance of service ‘Orchestrations.CheckOrder(4e73d817-91ea-ce89-1929-07a378910447)’.
The service instance will remain suspended until administratively resumed or terminated.
If resumed the instance will continue from its last persisted state and may re-throw the same unexpected exception.
InstanceId: 0b8f8467-1283-4213-bc8a-ff0532af0e75
Shape name: Cstr_Order
ShapeId: d8c6b4e6-f0a1-4770-8c78-557fe12ddff1
Exception thrown from: segment 1, progress 6
Inner exception: Error encountered while executing the transform Transforms.FromWebshop_XML_To_OrderReference_XML. Error:Unable to create the transform..Exception type: XTransformationFailureException
Source: Microsoft.XLANGs.Engine
Target Site: Void ApplyTransform(System.Type, System.Object[], System.Object[])
The following is a stack trace that identifies the location where the exception occuredat Microsoft.XLANGs.Core.Service.ApplyTransform(Type mapRef, Object[] outParams, Object[] inParams)
at Orchestrations.CheckOrder.segment1(StopConditions stopOn)
at Microsoft.XLANGs.Core.SegmentScheduler.RunASegment(Segment s, StopConditions stopCond, Exception& exp)
Additional error information:Value cannot be null.
Parameter name: extensionException type: ArgumentNullException
Source: System.Xml
Target Site: Void AddExtensionObject(System.String, System.Object)
The following is a stack trace that identifies the location where the exception occuredat System.Xml.Xsl.XsltArgumentList.AddExtensionObject(String namespaceUri, Object extension)
at Microsoft.XLANGs.BaseTypes.TransformBase.get_TransformArgs()
at Microsoft.XLANGs.RuntimeTypes.TransformMetaData..ctor(Type transformBaseType)
at Microsoft.XLANGs.RuntimeTypes.TransformMetaData._creator(Type t)
at Microsoft.XLANGs.RuntimeTypes.MetadataCache._slowFor(Type t)
at Microsoft.XLANGs.RuntimeTypes.MetadataCache.For(Type t)
at Microsoft.XLANGs.RuntimeTypes.TransformMetaData.For(Type t)
at Microsoft.XLANGs.Core.Service.ApplyTransform(Type mapRef, Object[] outParams, Object[] inParams)
———————–Hm, Any idea’s 😛 [/code]
We have a scenario where the input is a industry standard (schema for books called ONIX) xml file. However the XML instances can be in 2 formats – one long tag proper word version (with elements like <AudienceCodeScheme>) and another short tag code version (same tag called <b202> – to save the verbosity). Except for this, the schemas are identical in EVERY WAY. We have imported the 2 schemas into Biztalk.
The only flag which informs whether an instance is long tag or short tag is the case of the root element. If it is <ONIX[b:c8a6c96411]M[/b:c8a6c96411]essage>, it will be all long tags, if it is <ONIX[b:c8a6c96411]m[/b:c8a6c96411]essage>, it will be all short tags. (note the case of the \”m\”).
Based on this difference which is the best way to route the schemas into the maps? We are looking for a messaging solution only – no orchestrations are involved. Only a map will transform the content into a destination schema and transmitted to a send port. (I want to avoid property schemas if possible).
Thanks in advnce to the kind soul who helps….
May 10, 2006 at 2:31 PM in reply to: a listen with an activatable receive cannot have a timeout #13532i have initialised corerelation sets for the recieve shape within the listen.
Here are some virtual labs you can use:
[url]http://msdn.microsoft.com/virtuallabs/biztalk/[/url]You might also want to check this set of resources for learning BizTalk server: [url]http://blogs.msdn.com/luke/articles/380519.aspx[/url]
May 10, 2006 at 1:41 PM in reply to: a listen with an activatable receive cannot have a timeout #13533You can only have one activate receive shape and it would be at the top of your Orchestration.
If you are using a listen shape you will need to do some type of correlation to get the message into that Orchestration.
Hope this helps.
Thanks, that worked! but the solution came with another problem.
Because the port type is generated from a .asmx and then you can’t connect the send shape with the purchase message because its exspecting a message from the type Order.
I thaught, I will create a port type that is not from .asmx but I will define the SOAP for the port.
I set the transport type to SOAP and the URI to the .asxm.
Then, for the proxy, I referred to .dll
There, I went wrong.When I tested the project, I returned two errors:
A message sent to adapter \”SOAP\” on send port \”BSA_SndOrderToWebshop_SOAP\” with URI \”http://localhost/OrderSysteem/Service.asmx\” is suspended.
Error details: Failed to load \”\” type.
Please verify the fully-qualified type name is valid.
Details: \”\”.
The type must derive from System.Web.Services.Protocols.SoapHttpClientProtocol.
The type must have the attribute System.Web.Services.WebServiceBindingAttribute.AND
it could not correlate the request and response message.
————–
I would be glad I you know the answer on the first error message.Greetings 😀
Sir,
i don’t have any idea of Biztalk Server. can any one send me any material plz. it’s urgent.
——Pranjal MitraSir,
I’m new user of this forum. I don’t have any idea of Biztalk Server. Can any one send me any tutorial plz.
-Pranjal -
AuthorPosts