在SQL Server的企业管理器的“数据转换服务”的“数据导入/数据导出”中可以设置DTS包,在VB中可以调用,不知道在delphi中能否调用?又如何调用?请各位高手指点一二。
解决方案 »
- delphi 怎样获取剪切板上的内容
- 有什么组件编写的资料 提供一些
- 请求帮助,fastreport打印空记录的问题
- 请教: 如何取得phone(array[1..20] of char)里面的串信息(以#0结尾)的实际长度呢?
- Rave Report中分页问题
- com服务器与opendialog打开“我的文档”的冲突
- 通过程序调用硬盘上的SQL脚本,运行。
- DELHPI 7 在编程进行密集运算的时候界面会死掉不动,有没有办法让DELPHI 在运算时仍旧能够操作界面?比如说一个窗体在运算,一个窗体继续
- 如何用DELPHI将SQL SERVER里的数据导出成html格式?---在线急等啊!!!!
- 难道没有人会?关于session.AddStandardAlias('bc',getcurrentdir,'paradox')??????
- 参数传递时,如何将real型参数根据‘银行家算法’保留在小数点后几位
- 请教一个关于多线程的问题
很简单的,不过我现在每次执行大批量导入数据的时候程序好像停止响应了,虽然还在执行
DTS 有Onprogress事件,可惜我还没有尝试出如何在Delphi中使用。Some of my example.
goPackageOld := CreateOLEObject('dts.package2');
goPackage := goPackageOld;
goPackage.Name := STR_FTP_PACKAGE_NAME;
goPackage.Description := STR_FTP_PACKAGE_DESC;
goPackage.WriteCompletionStatusToNTEventLog := True;
goPackage.LogFileName := Global.gDTSLogFile;;
goPackage.FailOnError := False;
goPackage.PackagePriorityClass := 2; // Middle priority
goPackage.MaxConcurrentSteps := 4; // Paralell exe max number
goPackage.LineageOptions := 0;
goPackage.UseTransaction := True;
goPackage.TransactionIsolationLevel := 4096;
goPackage.AutoCommitTransaction := True;
goPackage.RepositoryMetadataOptions := 0;
goPackage.UseOLEDBServiceComponents := True;
goPackage.LogToSQLServer := False;
goPackage.LogServerFlags := 256;
goPackage.FailPackageOnLogFailure := False;
goPackage.ExplicitGlobalVariables := False;
goPackage.PackageType := 0;//'----------------------------------------------
//' create package steps information
//'----------------------------------------------------------------//'------------- a new step defined below
oStep := goPackage.Steps.New;
oStep.Name := STR_FTP_STEP_NAME;
oStep.Description := STR_FTP_STEP_DESC;
oStep.ExecutionStatus := 1;
oStep.TaskName := STR_FTP_TASK_NAME;
oStep.CommitSuccess := False;
oStep.RollbackFailure := False;
oStep____iptLanguage := 'VBScript';
oStep.AddGlobalVariables := True;
oStep.RelativePriority := 3;
oStep.CloseConnection := False;
oStep.ExecuteInMainThread := False;
oStep.IsPackageDSORowset := False;
oStep.JoinTransactionIfPresent := False;
oStep.DisableStep := False;
oStep.FailPackageOnError := False;
goPackage.Steps.Add(oStep);
oStep := NULL;
oTask := goPackage.Tasks.New('DTSFTPTask');
oTask.Name := STR_FTP_TASK_NAME;
oCustomTask1 := oTask.CustomTask;
oCustomTask1.Name := STR_FTP_TASK_NAME;
oCustomTask1.Description := STR_FTP_TASK_DESC;
oCustomTask1.SourceLocation := 0;
oCustomTask1.SourceSite := Global.FTPRemoteHostIP;
oCustomTask1.SourceUsername := Global.FTPLogin;
oCustomTask1.SourcePassword := Global.FTPPassword;
oCustomTask1.DestSite := Global.FTPLocalDir;
oCustomTask1.NonOverwritable := 0
oCustomTask1.NumRetriesOnSource := Global.FTPRetryTimes;
goPackage.Tasks.Add(oTask);
//
goPackage.Execute;