Процедура имеет много аргументов, указанных - PullRequest
0 голосов
/ 28 октября 2019

Я знаю, что все типы данных должны быть одинаковыми, а переменные должны иметь одинаковые имена, но, насколько я могу судить, они все одинаковые. Я использую одни и те же параметры и переменные для обновления, и это работает каждый раз, поэтому я не уверен, почему они не подходят для вставки. Ниже приведены мои параметры для моего сохраненного процесса.

@Customer varchar(20),
@Cust_NAMC_ID varchar(10),
@Program varchar(10),
@PO_Type_ID varchar(10),
@Part_No varchar(20),
@Part_Name varchar(50),
@Date_Rcvd varchar(50),
@New_Price decimal (18,4),
@Tooling_Price decimal (18,4),
@RFQ_Num varchar(20),
@Eff_From varchar(50),
@Eff_To varchar(50),
@FG_Part_No varchar(20),
@FG_Part_Name varchar(50),
@Ship_From varchar(50),
@Ship_To varchar(50),
@TG_NAMC varchar(50),
@Vendor_CD int,
@PO_NUM varchar(50),
@REV_NO varchar(20),
@Buyer_Name varchar(200),
@Manager_Name varchar(200),
@BU char(2),
@SAM varchar(50),
@RFQ_To_CUST varchar(50),
@Quoted_Date varchar(50),
@PO_From_FG varchar(50),
@PO_RCVD_Date varchar(50),
@PO_Eff_Date varchar(50)

Это мои столбцы:

                    <telerik:GridTemplateColumn HeaderText="Customer" ItemStyle-CssClass="customerddl" DataField="Customer"
                    FilterControlAltText="Filter Customer" SortExpression="Customer" FilterCheckListEnableLoadOnDemand="true" AutoPostBackOnFilter="true" GroupByExpression="Customer Group By Customer" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="125px" />
                    <ItemTemplate>
                        <telerik:RadLabel runat="server" ID="lblCustomer" Text='<%# DataBinder.Eval(Container.DataItem, "Customer") %>'></telerik:RadLabel>
                    </ItemTemplate>
                    <EditItemTemplate>
                        <telerik:RadDropDownList RenderMode="Lightweight" runat="server" ID="Update_Customer" DataSourceID="CustomerDataSource" DataTextField="Name" DataValueField="Name" DefaultMessage="-Select-" CssClass="req-field"></telerik:RadDropDownList>
                    </EditItemTemplate>
                    <InsertItemTemplate>
                        <telerik:RadDropDownList RenderMode="Lightweight" runat="server" ID="Insert_Customer" DataSourceID="CustomerDataSource" DataTextField="Name" DataValueField="Name" DefaultMessage="-Select-" CssClass="req-field"></telerik:RadDropDownList>
                    </InsertItemTemplate>
                </telerik:GridTemplateColumn>
                <telerik:GridBoundColumn DataField="Cust_NAMC_ID" CurrentFilterFunction="Contains" HeaderText="Customer NAMC">
                    <HeaderStyle Width="115px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Program" CurrentFilterFunction="Contains" HeaderText="Program">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="PO_Type_ID" HeaderText="CCP" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Part_No" HeaderText="Component PN" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="110px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Part_Name" HeaderText="Component Name" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="175px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Date_Rcvd" HeaderText="Date Rec'd" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="New_Price" HeaderText="New Price" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Tooling_Price" HeaderText="Tooling" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="RFQ_Num" HeaderText="Toyota Letter Reference RFQ #" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="150px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Eff_From" HeaderText="Effective From" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Eff_To" HeaderText="Effective To" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="FG_Part_No" HeaderText="Finished Good PN" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="150px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="FG_Part_Name" HeaderText="Finished Good Name" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="200px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Ship_From" HeaderText="Ship From" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="175px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Ship_To" HeaderText="Ship To" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="175px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="TG_NAMC" HeaderText="TG NAMC" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Vendor_CD" HeaderText="TG Vendor Code" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="PO_NUM" HeaderText="PO NO" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="REV_NO" HeaderText="Rev" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Buyer_Name" HeaderText="Buyer" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="135px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Manager_Name" HeaderText="Manager" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="125px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="BU" HeaderText="Business Unit" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="SAM" HeaderText="SAM" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="125px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="RFQ_To_CUST" HeaderText="RFQ to Customer" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Quoted_Date" HeaderText="Quoted Date" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="PO_From_FG" HeaderText="PO from FG" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="PO_RCVD_Date" HeaderText="PO Received Date" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="PO_Eff_Date" HeaderText="Effective Date" CurrentFilterFunction="Contains">
                    <HeaderStyle Width="100px" />
                </telerik:GridBoundColumn>

Это мои параметры вставки:

        <asp:Parameter Name="Customer" DbType="String" Direction="Input" />
        <asp:Parameter Name="Cust_NAMC_ID" DbType="String" Direction="Input" />
        <asp:Parameter Name="Program" DbType="String" Direction="Input" />
        <asp:Parameter Name="PO_Type_ID" DbType="String" Direction="Input" />
        <asp:Parameter Name="Part_No" DbType="String" Direction="Input" />
        <asp:Parameter Name="Part_Name" DbType="String" Direction="Input" />
        <asp:Parameter Name="Date_Rcvd" DbType="String" Direction="Input" />
        <asp:Parameter Name="New_Price" DbType="Decimal" Direction="Input" />
        <asp:Parameter Name="Tooling_Price" DbType="Decimal" Direction="Input" />
        <asp:Parameter Name="RFQ_Num" DbType="String" Direction="Input" />
        <asp:Parameter Name="Eff_From" DbType="String" Direction="Input" />
        <asp:Parameter Name="Eff_To" DbType="String" Direction="Input" />
        <asp:Parameter Name="FG_Part_No" DbType="String" Direction="Input" />
        <asp:Parameter Name="FG_Part_Name" DbType="String" Direction="Input" />
        <asp:Parameter Name="Ship_From" DbType="String" Direction="Input" />
        <asp:Parameter Name="Ship_To" DbType="String" Direction="Input" />
        <asp:Parameter Name="TG_NAMC" DbType="String" Direction="Input" />
        <asp:Parameter Name="Vendor_CD" DbType="Int32" Direction="Input" />
        <asp:Parameter Name="PO_NUM" DbType="String" Direction="Input" />
        <asp:Parameter Name="REV_NO" DbType="String" Direction="Input" />
        <asp:Parameter Name="Buyer_Name" DbType="String" Direction="Input" />
        <asp:Parameter Name="Manager_Name" DbType="String" Direction="Input" />
        <asp:Parameter Name="BU" DbType="String" Direction="Input" />
        <asp:Parameter Name="SAM" DbType="String" Direction="Input" />
        <asp:Parameter Name="RFQ_To_CUST" DbType="String" Direction="Input" />
        <asp:Parameter Name="Quoted_Date" DbType="String" Direction="Input" />
        <asp:Parameter Name="PO_From_FG" DbType="String" Direction="Input" />
        <asp:Parameter Name="PO_RCVD_Date" DbType="String" Direction="Input" />
        <asp:Parameter Name="PO_Eff_Date" DbType="String" Direction="Input" />

Любая помощь будетс благодарностью.

Ответы [ 2 ]

1 голос
/ 30 октября 2019

Ответом оказалось то, что для вставки был передан дополнительный параметр, необходимый для редактирования. Я удалил значение, выполнив это:

protected void grdCCPSource_Inserting(object sender, SqlDataSourceCommandEventArgs e)
{
    e.Command.Parameters.Remove(e.Command.Parameters["@Created_Date"]);
}
0 голосов
/ 28 октября 2019

В вашей вставке sproc либо запустите оператор печати, распечатывая все значения параметров, и / или запустите оператор выбора, делая то же самое.

например.

alter insert_sproc
( 
   @Customer varchar(20),
   @Cust_NAMC_ID varchar(10),
   etc….
 )

  begin
   print 'customer parm:' + @Customer 
   print 'Cust_NAMC_ID parm:' + @Cust_NAMC_ID 
   etc..

Как только вы определите, что значения parm передаются в порядке, перенаправьте ваш фокус на фактический оператор вставки.

  insert into tableName(customer)
  select @customer

   GO 

Посмотрите, что происходит после запуска вставки. Обратите внимание на любые сообщения об ошибках, такие как ограничения или проблемы с типом данных, которые могут возникнуть при попытке вставки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...