Sunday, April 29, 2007 - Posts
Executing a DTS package from .Net has never been simpler. Here's how:
'----------------------------------------------------------------------------------------------------------------------
' NOTE: Requires reference to Microsoft DTS Package Object Library
'----------------------------------------------------------------------------------------------------------------------
Dim oPackage As New DTS.Package
oPackage.LoadFromSQLServer sServerName, sUID, sPWD, DTSSQLStgFlag_Default, "", "", "", "MyPackageName", 0
oPackage.Execute
Set oPackage = Nothing
Cheers,
Obi
'-------------------------------------------------------------------------------------
' Determines the date of the Sunday of the week for the incoming date
'-------------------------------------------------------------------------------------
Function GetSundayDate(strDateIn)
dim intDayOfWeek
intDayOfWeek = weekday(strDateIn, 1)
intDayOfWeek = (intDayOfWeek * (-1)) + 1
GetSundayDate = formatdate(dateadd("d",strDateIn ,intDayOfWeek))
End Function
'-------------------------------------------------------------------------------------
' Formats a date in mm/dd/yyyy format
'-------------------------------------------------------------------------------------
Function FormatDate(strDateIn)
FormatDate = datepart("m", strDateIn) & "/" & datepart("d", strDateIn) & "/" & datepart("yyyy", strDateIn)
End Function
'-------------------------------------------------------------------------------------
' Returns a formatted "hh:mm AM/PM" string for the incoming 24-hour formatted time
'-------------------------------------------------------------------------------------
Function FormatTime(intTime)
dim strTime
if intTime < 1000 then
strTime = cstr(intTime)
FormatTime = left(strTime,1) & ":" & right(strTime,2) & " AM"
elseif intTime < 1200 then
strTime = cstr(intTime)
FormatTime = left(strTime,2) & ":" & right(strTime,2) & " AM"
elseif intTime < 1300 then
strTime = cstr(intTime)
FormatTime = left(strTime,2) & ":" & right(strTime,2) & " PM"
else
strTime = cstr(intTime - 1200)
FormatTime = left(strTime,1) & ":" & right(strTime,2) & " PM"
end if
End Function
'-------------------------------------------------------------------------------------
' Returns a mm/dd/yy formatted date for the incoming Sunday date and the requested day of the week
'-------------------------------------------------------------------------------------
Function GetDate(strDateIn, intDayOfWeek)
GetDate = formatdate(dateadd("d", intDayOfWeek, strDateIn))
End Function
Happy Coding,
Obi
A simple yet useful way to demonstrate how to take an XML document, and deserialize it to rehydrate an object:
string xmlStuff = TaxReturnXMLDoc.OuterXml;
TextReader reader = new StreamReader(@"C:\temp\Efile-SerializedTaxReturnObject-Clean.xml");
XmlSerializer serializer = new XmlSerializer(typeof(TaxReturnEntity));
TaxReturnEntity tre = (TaxReturnEntity)serializer.Deserialize(reader);
reader.Close();
Obi
Expose the values you want to access in other pages as proprties of the current page class. This method requires you to code extra properties that you can access in another web form.
The entire process works as follows:
1. Create the web form with controls
2. Create property Get procedures that will return control values
3. Provide some button or link button that posts the form back
4. In the button click event handler call Server.Transfer method that will transfer execution to the specified form
5. In the second form you can get a reference to the first form instance by using Context.Handler property. Then you will use the get properties we created to access the control values.
--------------Source Web Form----------------
Add following properties to the web form:
public string Name
{
get
{
return TextBox1.Text;
}
}
public string EMail
{
get
{
return TextBox2.Text;
}
}
Now, call Server.Transfer.
private void Button1_Click (object sender, System.EventArgs e)
{
Server.Transfer("anotherwebform.aspx");
}
----------------------------------------
Destination Web Form
----------------------------------------
private void Page_Load (object sender, System.EventArgs e)
{
//create instance of source web form
WebForm1 wf1;
//get reference to current handler instance
wf1=(WebForm1)Context.Handler;
Label1.Text=wf1.Name;
Label2.Text=wf1.EMail;
}
Cheers,
Obi