Don’t know how to start

Home Page Forums BizTalk 2004 – BizTalk 2010 Don’t know how to start

Viewing 1 reply thread
  • Author
    • #12477


      This is where I am at so far. but i still have a problem. You’re right, I need to transform two messges into one, I have to join them. But what throws me off is that I can’t have two smechas inside a MAP on the left side and one end result schema on the right side. Any ideas?

    • #12478

      Stephen, this is awesome, thanks alot. Funny thing is, i have exactly what you have in your article except I have a sequential convoy. I also have a Merge schema setup like that, i just wasn’t sure how to create a map to transform merge schema into the end result, like you have there with a loop node, now i know, thanks alot.

      Just one last question, you have a correlation set setup with \”ID\” field in each schema, this is exactly what I have except i set the \”Fixed\” property of the field to \”1\”. My question is, who sets the ID and how is it able to correlate. In your project it seems like it’s untouched and I guess it is left upto biztalk engine to setup that field? I guess the engine knows it’s a paralell convoy? How is it done? because as you know in my case, i can’t link the messages by any field, i think they have to be linked by orchestration instance?….let me know please.

      Thanks alot

      • #12479

        Your first part, it is not possible using the FTP Adapter. At least not that I know of. The FTP Adapter will pick up and remove the file from the location. If you needed more then this, you would need a custom adapter or some other type of business process.

        Once you get your file into BizTalk, I think you should be able to have logic inside your Orchestration for your ID’s.

        Hope this helps.

        • #12480

          I would probably do this in sequence rather then parallel. You talk about receiving the FTP file first, then calling SQL. That sounds sequential to me.

          Then, use a .net component or possible the SQL Adapter to return your next set of data.

          You can use a map to map 2 messages into 1. This can only be done inside the Orchestration and if you have the two input schema and output BizTalk will generate the start of the map for you when you define the input/output using the transform shape.

          So, I would try something like:
          Receive FTP
          Send SQL – Receive SQL response (think you can do this)
          Map Two Received Message into One using Transform Shape
          Send to SQL

          Hope this helps you out.

          • #12481

            Sure you can. Check out this sample and see if it helps:

            You need to set this up inside the Orchestration and use the transform shape to create the map for you.

            • #12482

              Well, Convoys should really be correlated on data inside the message. That’s really what makes a Convoy a Convoy (i.e. multiple messages received that relate to each other). In my case, the ID field was “some id inside the message” that was the same for each message.

              Example: convoy for all orders processed today could use Date or all orders from Iowa could use the State field.

              Now, there are other ways to do it, but in your case I would try to find something inside the data to use. If you are using a Request – Response (like the 2nd sample in the SQL white paper I think) then you wouldn’t need a Convoy at all.

              • #12483

                Hi, this is my first post here so please be easy on me 🙂

                I am polling an ftp site for a file (ie MyFile.txt), that file is a delimited flat file which i was able to get biztlak to parse. How to setup biztlak that it polls for changes to the file, not just if the file exists?

                So what I need to do, is select bunch of ID’s from a database table, then i need to insert the data in the file per each ID. So for example if the file contains 100 records and there are 5 ID’s in my SqlServer table, I want to insert 500 records into a table.

                To complicate this just a little further, the flat file has two columns and the table with ID’s also has two columns. Depending on the 2nd column from the database table, I either want to insert all records (DBTable.ID,File.ColumnA) or (DBTable.ID, File.ColumnB) from the flat file (for each ID i retreive from the databse)….Not sure if that makes sense, i hope it does.

                Hoping someone knows how to proceed with this sorta thing. Thanks for all the help in advance

                • #12484

                  Mostly I need help with the second part. I was infact trying to do this using an orchestration but honestly I don’t know how the process would go, what shapes to use. Do I somehow load ID’s from database using one port and then load the flatfile using another port, then using some kind of map i crease the result i need and then using a send port I insert the records? how would it go, can you give a more detail if possible. Thanks

                  • #12485

                    I’ve played with it some more and no luck :). I have a receive ftp location which looks for a file on an ftp site which activates the orchestration. I want the orchestration to grab data from sql server table, mix the data with the data from the flatfile gotten on the ftp and then insert into another sql table. I dont know enough about biztlak to know where to start. I tried to create a paralell process which has two receive shapes which are connected to FTP Receive Loc and SqlServer respectively. Now It seems that i need to combine two messages into one and then try to map this 3rd composite message into a 4th one thats going to be sent to an SqlServer port? Do i need to create a schema which can hold both files separate under a root node and then MAP that schema into final result? Pretty confusing. By the way, i’ve used paralell process because it said that Two Receive Shapes in a convoy require them to have the same port….pretty weird. What’s a good way to procede? Obviously I am confused……Thanks

                    • #12486

                      would it be viable to correlate by ReceivePortID? Since i am using a convoy, i am using same port with multiple receive locs….

                      • #12487

                        That’s exactly my problem, there’s nothing in the data to relate it, since I need to join the data without a condition. I am not dropping the files on the FTP, the other company is. This process runs every day. Do you think if i put a Fixed value for ID, for example value=1. So both the schemas will have promoted ID field with Value of 1 and correlate on that maybe……is there an OrchestrationInstanceID variable somewhere? Because in my process, I am waiting for a file on ftp, once I got the file, i select data from SQL Server and JOIN it with the data from FTP. It’s kinda like a step by step process, so I have nothing to link it with, although OrchestrationInstanceID would be ideal, if there’s such a thing…..

                        the format of the files is described here:


Viewing 1 reply thread
  • The forum ‘BizTalk 2004 – BizTalk 2010’ is closed to new topics and replies.