一尘不染

如何提示从SSIS包中输入?

sql

我希望在DTSX程序包中有一个sql查询,并且希望有某种提示来更新null列的值。请参阅下面的内容:

UPDATE  SF1411
SET     [QuoteNumber]   = '123456'
    ,   [ItemNumber]    = '123654-100'
    ,   [DeleteItem]    = 'NO'
WHERE   [QuoteNumber]   = '0'

我希望能够被提示输入QuoteNumber和ItemNumber,然后根据需要更新脚本。这有可能吗,如果可以的话我该怎么办?


阅读 122

收藏
2021-03-10

共1个答案

一尘不染

可以通过以下方式实现:这将在您的初始脚本组件中。

    System.Windows.Forms.Form frm = new Form();
    TextBox txt = new TextBox();
    Button inputset = new Button();

    public void Main()
    {
        inputset.Text = "Set Variable Value";
        inputset.Width = 200;
        inputset.Height = 100;
        inputset.Click += new EventHandler(inputset_Click);
        txt.Name = "Input";
        frm.Controls.Add(txt);
        frm.Controls.Add(inputset);
        frm.ShowDialog();
        MessageBox.Show(Dts.Variables["Value1"].Value.ToString());


        Dts.TaskResult = (int)ScriptResults.Success;
    }

    void inputset_Click(object sender, EventArgs e)
    {
        Dts.Variables["Value1"].Value = Convert.ToInt32(txt.Text);
        frm.Close();
    }

这应该是包中用于设置变量值或构造SQL Command的初始组件。

2021-03-10