I am trying to send files over to an ftp server on Mainframe using scripts that is provided in this link, but I can't get it to work.
The problem is the sendfile method concatinates the source file name to the MVS dataset name which causes the issue.
Here's my code (FTPConn is a connecation mgr for FTP):
Imports System
Imports System.Data
Imports System.Math
Imports Microsoft.SqlServer.Dts.Runtime
Public Class ScriptMain
Public Sub Main()
Dim mgr As ConnectionManager
mgr = Dts.Connections("FTPConn")
Dim conn As FtpClientConnection
conn = New FtpClientConnection(mgr.AcquireConnection(DBNull.Value))
Dim toFiles As String
toFiles = "ftpp.a.b.xxxxx.yyyyyy.int"
Dim fromFiles(0) As String
fromFiles(0) = "c: est.txt"
Try
conn.Connect()
conn.SendFiles(fromFiles, toFiles, True, True)
Catch ex As Exception
Finally
conn.Close()
End Try
Dts.TaskResult = Dts.Results.Success
End Sub
End Class
Output:
SSIS package "Package.dtsx" starting.
Error: 0xC001602A at Package, Connection manager "FTPConn": An error occurred in the requested FTP operation. Detailed error description: 200 Representation type is Ascii NonPrint
200 Port request OK.
501 Invalid data set name "ftpp.a.b.xxxxx.yyyyyy.int/test.txt". Use MVS Dsname conventions.
In using SSIS to migrate data from mainframe to SQL 2005, I had a situation where only group level data was exposed through the ODBC to SSIS, so I pulled this information as varchar on the SQL destination side. Now I would like to break that group into the individual numeric columns I need on SQL Server. However, the positive and negative sign did not convert because it came of character. I can write something to convert the positive signs to positive numbers; however I cannot do the negative because I would need get rid of the leading zeros in order to place the negative sign before the number. Is there anything I could have done to get SSIS to do the conversion like it did for every one-to-one mapping?
Has anyone been able to use an ftp task to pull a flat file from a z/os mainframe? The ftp task appears to want the remote file to begin with a /, which pulls you into unix system services on z/os.
Being that this issue first surfaced September 2005 and it's now six months later (March 29, 2006), has the problem with recognizing VMS datasets (not requiring a '/') been addressed?
We would like to use DTS to pull data from DB2 on the mainframe into SQL Server 7.0 databases. Does anyone know what 3rd party products are required for us to do this (and which ones are the best to use)? What has to be installed on the mainframe and on the SQL Server?
What would I need in order to setup replication between SQL2000 SP3 and MVS Subsystem running Db2 database . I mean, does it need any 3rd party tool or regular replication setup between SQL and Db2 is enough
hi I am loading from Mainframe to Sqlserver. Right now i am truncating the tables in sqlserver connecting to mainframe and downloading the tables to Sql server. The problem is sometimes i fail to connect to Mainframe. So is there any way of checking whether i can connect to mainframe and if succesful truncate the tables. Thanks
I am trying to use the FTP Task within a DTS Package to copy a file from the Mainframe (OS390). We have SQL2000 with SP2 running on NT. This process works when I do it manually with ftp. At first, when I would execute the package it would just hang like it is copying but it would never end.
Then, I added a Dynamic Properties Task to the package. I used the Dynamic Properties Task to set up a Constant with the actual name of the Source File located on the Mainframe. When I ran this I received "Invalid string format for source file name".
Next, I removed the Dynamic Properties Task from the DTS Package, saved the package, and executed it. The package executed successfully, but when I looked in the folder on my hardrive the file that was supposed to be copied was not there. In order to get the package to execute successfully it appears that I have to go through the following process: add the Dynamic Properties Task, set up a constant to change the Source File name, save the package, delete the Dynamic Properties Task, save the package and then execute it.
Also, on one execution of this package, it brought across the file from the Mainframe to my hard drive but the file was in Binary format.
What do I have to do to get the FTP Task within a DTS Package to work? Would you specify in detail exactly how the Dynamic Properties Task needs to be set up? How can I specify how to change the file format from Binary to ASCII in the DTS Package?
is there a solution outside for getting of DB2 for OS/390 into SQL server? I mean not replication or copying of data with flat files or an ETL tool, but a kind of integration of DB2 tables as they would be "normal" mssql tables.
Oracle has Transparent Gateways for os/z DB2 and many other non-Oracle databases, is there some similar for SQL Server?
Could it be realisable with an ODBC client for DB2?
I have a million record mainframe flat file that I BULK INSERT into aSQL table with CHAR(fieldlength) deined for every column to preventimport errors.Once imported I "INSERT INTO ... SELECTdbo.MyScrubFunction(columnN),..."My scrub functions will take for example a char(8) YYYYMMDD date fieldand return either a valid datetime variable or a NULL for 8-spaces or8-zeros....or return a MONEY datatype by dividing by 100.PROBLEM: This is extremely SLOW!QUESTION: Should I do multiple "UPDATE ...SET" statements back intoCHAR() columns, then let SQL Server do the CHAR() to DATETIME andMONEY conversions itself? What is the most efficient or recommendedmethod to transform/scrub imported data?P.S. I also have to convert low-values and reformat dates which Ialso use my own UDFs for.THANKS
Hello Everybody! Im trying to migrate my SQL 2000 packages thatŽs currently working in the company production enviroment to SSIS packages. So, in the 2000 version i got the flat file from Mainframe and i had to do a trick to transform all the columns to match the same size as the example above:
So, when i import the file, first of all i have to transform the Text file to another texfile file fixing the size to 32..... but you can see that in the second row im receiving a CRLF and if i try to import without the trick, the preview of the ragged file show me the columns desorganized...
Someone knows how to import it without transform to another text file with fixed length? Thanks Cleber
I want to extract all fields from a table and ftp the output file to the mainframe. My problem is the columns in the extracted file do not line up, which is required by the mainframe program. Example column would be this column of last names: Smith Jones Sullivan
How could I format the extracted data to look like this: Smith Jones Sullivan
Has anyone had any success sending or receiving file(s) from either Script or FTP task? I've Google and found examples and no luck for me. The main idea is to send a file from local PC/server to mainframe.
I've used this workaround, SSIS Script Task but no good.
SQL Server Feedback Workarounds 281893. SSIS FTP Task - Mainframe When you try to connect to a mainframe (os / 390) to ftp receive a file you get an error message stating that the path does not begin with a "/". Active feedback entered 6/7/2007 by EWisdahl
Entered by EWisdahl on 6/7/2007
Add a script task (as follows) to download the desired files... ' Microsoft SQL Server Integration Services Script Task ' Write scripts using Microsoft Visual Basic ' The ScriptMain class is the entry point of the Script Task. Imports System Imports System.Data Imports System.Math Imports Microsoft.SqlServer.Dts.Runtime
Public Class ScriptMain ' The execution engine calls this method when the task executes. ' To access the object model, use the Dts object. Connections, variables, events, ' and logging features are available as static members of the Dts class. ' Before returning from this method, set the value of Dts.TaskResult to indicate success or failure. ' ' To open Code and Text Editor Help, press F1. ' To open Object Browser, press Ctrl+Alt+J.
Public Sub Main() Try 'Create the connection to the ftp server Dim cm As ConnectionManager = Dts.Connections.Add("FTP") 'Set the properties like username & password cm.Properties("ServerName").SetValue(cm, "myServer") cm.Properties("ServerUserName").SetValue(cm, "myUserName") cm.Properties("ServerPassword").SetValue(cm, "myPassword") cm.Properties("ServerPort").SetValue(cm, "21") cm.Properties("Timeout").SetValue(cm, "0") 'The 0 setting will make it not timeout cm.Properties("ChunkSize").SetValue(cm, "1000") '1000 kb cm.Properties("Retries").SetValue(cm, "1") 'create the FTP object that sends the files and pass it the connection created above.
Dim ftp As FtpClientConnection = New FtpClientConnection(cm.AcquireConnection(Nothing)) 'Connects to the ftp server ftp.Connect() ftp.SetWorkingDirectory("MyFolder.MySubFolder.MySubSubFolder")
Dim files(0) As String files(0) = "MyfileName" ftp.ReceiveFiles(files, "C: emp", True, True)
' Close the ftp connection ftp.Close()
'Set the filename you retreive for use in data flow Dts.Variables.Item("FILENAME").Value = maxname Catch ex As Exception Dts.TaskResult = Dts.Results.Failure
I have data on the mainframe that contains special characters such as a copyright symbol (letter c with a circle) when running the SSIS package migration from mainframe database to SQL Server 2005 database the data in the column is truncated at the point it hits this symbol with no errors. I had error reports set up for truncation and did not see an error report for this.
I have tried to change the data type to different data types and re-run nothing changes things.
The symbol is a EBCDIC 'b4' on the mainframe side - I have no idea what that would translate to.
Anyone have any ideas? Am I stuck with substituting something else for the symbol on the mainframe side and re-running the package? Is there anyway to handle this situation in SSIS? I am using the Import/Export Wizard for this one because before I ran into this problem it seemed to be working fine.
I am migrating mainframe data to SQL Server 2005 and have found that from a mainframe character field with leading zeros for example the value of 00023 to a SQL Server column defined as varchar (5) the resulting column value is 23 not 00023. I need the leading zeros because these are account ids, etc. So the value is 00023 not 23. Is this some setting in SQL Server 2005 that needs to be changed or what? This is not a numeric field on the mainframe or a numeric column for SQL Server.
When attempting to use the FTP task to download a file from a Mainframe system the task fails stating the filename as invalid because it doesn't begin with a "/".
Adding the slash to the front of the file name causes the mainframe to be unable to locate the file.
Commandline version of FTP.exe mimicks this behavior by working perfectly when the filename has no slash, and being unable to find the file when the slash is present.
Why does microsoft force a filename to start with a "/" and is there a way to make SSIS skip the validation phase for the FTP task?
I've seen several posts about reading and writing files that have different record types with varying column metadata. My particular file has 11 record types plus several header types and looks something like:
<Header1>
<Header2>
<Detail01-#1>
<Subdetail02>
<Subdetail03>
...
<Detail01-#2>
<Subdetail02>
<Subdetail03>
...
...
Since i need to get different detail and subdetail records, i can't really use the technique of 3 dest file connection managers found in http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=87269&SiteID=1
I've tried using an exec sql to get the main detail records and then a forech ADO en umerator that would get the subdetails, but it all seems so kludgy. I'm starting to think that I should just write the bulk of the file creation code in a c# app instead of trying to smush this into SSIS. Opinions? Am I missing some trick in SSIS?
I am trying to connect to a remote MSSQL database through a manager program called "SQL Manager Lite". The first thing that the wizard asks me is the "host name".
How do I find this host name? I just mention that I am trying to connect to a database on a shared hosting.
I'm in the midst of planning how to build an NT box to host SQL 7.0 and was wondering if there is any advantage to segregating the RAID 5 Array (5 x 18GB drives) into numerous *logical* partitions to separate database and log files (I can't see what advantage there would be if the disks are all on the same array, but..)
If anyone has any pointers or links to recommended NT configurations for hosting SQL, I'd appreciate hearing them.
hi, I change the PC name. so now @@servername returns the oldname. I try sp_dropserver and I got an error:
Msg 15015, Level 16, State 1, Procedure sp_dropserver, Line 42 The server '[IBM-E81EB247FF3]' does not exist. Use sp_helpserver to show available servers.
Hi all,I'm new to SQLServer (Express edition) so I was wondering: if the webhost supports SQLServer 2005 do I just need to move the .MDF file to mydirectory on the web host to be able to use it?Thanks,Lorenzo
Whatever you do, don't try aspwebhosting.com . One day recently I gotan email from them saying that my account had been suspended for usingtoo much cpu time. There was no further explanation. Those bastardstook my site offline, removed my email account, blocked my ftp accessand even refused to let me get a backup of sql-server data. I sentthem an email (using a yahoo account since they had shut down my ownserver) to ask what I could do to get my data. Rather than answer myemail they simply put me their BLOCK list. All of my emails are nowautomatically bounced. I only sent them one email and it was verypolite. My website is gone. My data is gone. All of my files aregone. The loss of time and effort combined with damage to my businessis unforgivable
I am looking for a free ms sql database for my programs, but i don't want to host it on my computer, because my web host does not allow servers to be run and people connecting to thme.
when I run the Query "Select @@ServerName" it is providing the server name which is not same as I connect to SQL Server.example : My SQL Server Name is "XXX123" and when I run the above query it is Printing as "YYY123"
Hi, I'm using SqlServer 2000 at a web host, and share this db with about 200 others (it's an inexpensive web host so I guess there is not very much traffic on most of them, but I can only see their db IDs so I don't know what organisations they are or the urls they have). Usually, my web site runs fine, but lately it's really really slow (as in non-functioning in reality). I'm in the middle of coding my seach functionality, so I fear that I'm causing this myself. ;-) However, there are only ten posts in my test db, so it should be a piece of cake for SqlServer. The other .aspx pages runs rather slow too now, but when I start a programming session they have worked fine (this has happened three times now so I don't know what to conclude). When the server slows down, it can stay down for hours. I've also tried to access my site from other computers but get the same result, so I guess it has nothing to do with caching (I also tried emptying my browser's - IE7 - cache). I have several asp web sites with Access dbs at the same web host, and they all work fine. In addition, I have no problem viewing and editing my db at the web host via SqlServer Management Studio Express. What do you think of this problem? Should I go for a more expensive web host? Should I give them the "It's not you, it's me" speech? ;-) Or is it really me? Below's my search code, and as you can see, there are some integers there to make sure the loops don't run ad infinitum. I don't really think the problem actually lies with my search code, as everything worked well a week ago, but I don't know... BTW, if you think my code can run much faster without getting too tricky, please let me know. Please help! Pettrer If Page.IsPostBack Then Dim soktext As String = Trim(SokTextBox.Text) + " " Dim tillagg As String = "" Dim varv As Integer = 1 Dim loopvarv As Integer = 0 soktext = Replace(soktext, vbCrLf, " ") 'vbCrLf = mellanslag i VB-terminologi Do While InStr(soktext, " ") And varv < 100 soktext = Replace(soktext, " ", " ") loopvarv += 1 Loop While Trim(soktext).Length > 0 And varv <= 20 'Loop för att identifiera ord och lÀgga till dem i sqlsatsen, ett i taget Dim icke As String = " "
Dim ordet As String = soktext.Substring(0, soktext.IndexOf(" ")) 'Det godkÀnda ordet lÀggs till i tmp-strÀngen soktext = soktext.Remove(0, soktext.IndexOf(" ") + 1) 'Tar bort det som just anvÀnts (eller varit för kort) If ordet.Length > 1 Then 'Blanksteg och ensamma bokstÀver förhindras att komma med i sql-satsen If ordet.StartsWith("-") Then 'Det Àr ett minusord icke = " NOT " 'I sqlsatsen blir det alltsÄ AND NOT (...) ordet = ordet.Remove(0, 1) 'Tar bort minusttecknet frÄn sökstrÀngen End If tillagg += " AND " & icke & " (artistnamn LIKE '%" & ordet & "%' OR " & _ "beskrivning LIKE '%" & ordet & "%' OR " & _ "kulturhemvist LIKE '%" & ordet & "%' OR " & _ "kontaktnamn LIKE '%" & ordet & "%') " End If varv += 1 End While Dim kat As String = "" If KategoriDropDownList.SelectedValue <> 0 Then kat = " AND (kategori1 = " & KategoriDropDownList.SelectedValue & _ " OR kategori2 = " & KategoriDropDownList.SelectedValue & _ " OR kategori3 = " & KategoriDropDownList.SelectedValue & _ " OR kategori4 = " & KategoriDropDownList.SelectedValue & ") " End If Dim lan As String = "" If LanDropDownList.SelectedValue <> "alla" Then lan = " AND lan = '" & LanDropDownList.SelectedValue & "' " End If ResultatDataSource.SelectCommand = "SELECT DISTINCT TOP 200 folknuID, kategori1, kategori2, kategori3, kategori4, initial, artistnamn, lan, kontakthemsida, kategori1, (COALESCE(audio1,'') + COALESCE(audio2,'') + COALESCE(audio3,'')) As audio, (COALESCE(video1,'') + COALESCE(video2,'') + COALESCE(video3,'')) As video, (COALESCE(pressbild1,'') + COALESCE(pressbild2,'') + COALESCE(pressbild3,'')) As pressbild " & _ "FROM Mytable " & _ "WHERE shown = 1 AND shownadm = 1 " & _ tillagg & _ kat & _ lan & _ "ORDER BY initial" ResultatLabel.Text = "SelectCmd: " & ResultatDataSource.SelectCommand ResultatGridView.DataBind() End If '*** pÄ sökkoden
Are there any restrictions, limitations or anything to prevent the use of SQL Express database being used with my ASP.NET 2.0 application on a public web host? If so, what are they? Thanks.
HiAs i have read, there have been discussions before how to move a local MDF databas to MSsql server at a webhost.But i cant figure it out, i know the answere is out there but i cant find it.I have downloaded the Host Deployment tool that generates a .sql file from my database, it looks ok.The problem is that my host dont allow me to execute this. I have also tried to run a file called RunSql.aspx that should help me execute my .sql file.But i recieve errors Opening url http://mydomainz1.com/mydbfile.mdf.sqlAn error occured: System.Net.WebException: The remote server returned an error: (404) Not Found. at System.Net.HttpWebRequest.GetResponse() at ASP.runsql_aspx.__Render__control1(HtmlTextWriter __w, Control parameterContainer) in d:hsadminaccoundidmydomainz1.comRunSQL.aspx:line 58The line 58 is empty Is there anyway that a mdf file that i have build in VWD 2005 can work as a standalone database?I would like it to be as a .mdb database that is simple to move and so on. Or do the mdf database have to have a MSsql Express or a MSsql Server? Grateful for help! / mitmit
I have a DNN install on my local PC that I would now like to transfer to my remote host server. What is the best way to do this? I have exported the db locally but see no way to import it on the host.
I created a sqlexpress database in visual studio 2005 and can't figure out to move the database to my hosting company( godaddy ). I can't connect remotely to the database on my hosting company. Whats the best way to go about this?
At work, we are in the process of moving a server running SQL Server 7 from one domain to another. A part of this domain change will necessitate that the server be renamed. In a couple of tests that we ran we found that changing the domain does not cause problems, but changing the server name does. How does one register the databases with the new server name without reinstalling everything from scratch?
Any assistance would be greatly appreciated as we are under a time crunch here. Please reply to my email as I am unable to check this board often.