![]() |
|
Запись в скл | ☑ | ||
---|---|---|---|---|
0
Мисти
22.08.14
✎
14:18
|
Ругань -
//по причине: //Произошла исключительная ситуация (Microsoft OLE DB Provider for SQL Server): // Параметризированный запрос "(@P1 nvarchar(27),@P2 bit,@P3 nvarchar(250),@P4 nvarchar(50),@P5" ожидает параметр "@P11", который не был указан. На запрос - ТекстЗапроса = "update gtw_ContractImport set ModifiedOn1C= ?, DoDelete = ?, Number = ?,ContractType = ?, ContractDate = ?, StartDate = ?,DueDate = ?,AccountId = ?, |TerminationContractDate= ?,TerminationReason= ?,PrimaryContractId= ? WHERE UI1C = ?"; Cmd.CommandText = ТекстЗапроса; //Если СокрЛП(СтрДоговорСКЛ.ID)="" Тогда //Иначе // Cmd.Parameters(0).Value = СтрДоговорСКЛ.ID; //КонецЕсли; Cmd.Parameters(0).Value = СтрДоговорСКЛ.ModifiedOn1C; Cmd.Parameters(1).Value = СтрДоговорСКЛ.DoDelete; Cmd.Parameters(2).Value = СтрДоговорСКЛ.Number; Cmd.Parameters(3).Value = СтрДоговорСКЛ.ContractType; Если СтрДоговорСКЛ.ContractDate > '17530101' Тогда Cmd.Parameters(4).Value = СтрДоговорСКЛ.ContractDate; Иначе Cmd.Parameters(4).Value = '17530102'; КонецЕсли; Если СтрДоговорСКЛ.StartDate > '17530101' Тогда Cmd.Parameters(5).Value = СтрДоговорСКЛ.StartDate;; Иначе Cmd.Parameters(5).Value = '17530102'; КонецЕсли; Если СтрДоговорСКЛ.DueDate > '17530101' Тогда Cmd.Parameters(6).Value = СтрДоговорСКЛ.DueDate; Иначе Cmd.Parameters(6).Value = '17530102'; КонецЕсли; Если СокрЛП(СтрДоговорСКЛ.AccountId) = "" Тогда Иначе Cmd.Parameters(7).Value = СтрДоговорСКЛ.AccountId; КонецЕсли; Если СтрДоговорСКЛ.TerminationContractDate > '17530101' Тогда Cmd.Parameters(8).Value = СтрДоговорСКЛ.TerminationContractDate; Иначе Cmd.Parameters(8).Value = '17530102'; КонецЕсли; Cmd.Parameters(9).Value = СтрДоговорСКЛ.TerminationReason; Если СокрЛП(СтрДоговорСКЛ.PrimaryContractId)="" Тогда Иначе Cmd.Parameters(10).Value = СтрДоговорСКЛ.PrimaryContractId; КонецЕсли; Cmd.Parameters(11).Value = СтрДоговорСКЛ.UI1C; |
|||
1
Мисти
22.08.14
✎
14:19
|
По-моему - в огороде бузина, а в Киеве дядька. Не может быть такого, чтоб внутри базы была навешана какая-то доп. процедура и ругалась бы уже она?
|
|||
2
Awreli
22.08.14
✎
14:28
|
привет от динамического обновления
|
|||
3
Мисти
22.08.14
✎
14:37
|
От какого такого динамического обновления??
|
|||
4
Franchiser
гуру
22.08.14
✎
14:41
|
я запросы к скулю пишу без параметров, м.б. потому что параметров больше 10?
|
|||
5
Ненавижу 1С
гуру
22.08.14
✎
14:42
|
тип какой?
|
|||
6
Мисти
22.08.14
✎
14:43
|
Тип чего?
|
|||
7
Мисти
22.08.14
✎
14:44
|
(4) У меня и 27 параметров было.
Меня удивляет, почему в ругани перечислена только часит параметров. |
|||
8
Franchiser
гуру
22.08.14
✎
14:45
|
я так понял ругань относится к 11-му параметру
|
|||
9
Мисти
22.08.14
✎
15:01
|
Если СокрЛП(СтрДоговорСКЛ.PrimaryContractId)="" Тогда
Иначе Cmd.Parameters(10).Value = СтрДоговорСКЛ.PrimaryContractId; КонецЕсли; Ну вот этот, наверное, но он же может быть нулл, значит, могу не задавать. |
|||
10
МихаилМ
22.08.14
✎
15:08
|
(0)
в коде ошибка . мб случаи незаполнения параметров. |
|||
11
Мисти
22.08.14
✎
15:14
|
Ну и что? У меня не заполняются только те, которые по умлочанию нулл. И, к тому же - раньше-то работало!
|
|||
12
Ненавижу 1С
гуру
22.08.14
✎
15:16
|
(6) СтрДоговорСКЛ.UI1C
|
|||
13
Мисти
22.08.14
✎
15:24
|
Тип строка
//[Id] [uniqueidentifier] NULL, 1 // [UI1C] [nvarchar](50) NULL, 2 // [ModifiedOn1C] [datetime2](7) NULL, 3 // [DoDelete] [bit] NOT NULL, 4 // [Number] [nvarchar](250) NOT NULL, 5 // [ContractType] [nvarchar](50) NULL, 6 // [ContractDate] [datetime2](7) NULL, 7 // [StartDate] [datetime2](7) NULL, 8 // [DueDate] [datetime2](7) NULL, 9 // [AccountId] [nvarchar](50) NULL, 10 // [TerminationContractDate] [datetime2](7) NULL, 11 // [TerminationReason] [nvarchar](250) NOT NULL, 12 // [PrimaryContractId] [uniqueidentifier] NUL 13 |
|||
14
Мисти
22.08.14
✎
15:58
|
ау?
|
|||
15
Мисти
22.08.14
✎
18:26
|
ау!
|
|||
16
Мисти
22.08.14
✎
19:02
|
все пьют?
|
|||
17
Мисти
22.08.14
✎
19:50
|
Произошла исключительная ситуация (Microsoft OLE DB Provider for SQL Server): Параметризированный запрос "(@P1 nvarchar(27),@P2 bit,@P3 nvarchar(250),@P4 nvarchar(50),@P5" ожидает параметр "@P10", который не был указан.
Путем исключений понятно, что не нравится вот это: Если СокрЛП(СтрДоговорСКЛ.PrimaryContractId)="" Тогда Иначе Cmd.Parameters(8).Value = СтрДоговорСКЛ.PrimaryContractId; КонецЕсли; ,хотя в таблице описано, чт он может быть нулл. Как тогда быть: это идентификатор их, если у меня его нет - я его не рожу! |
|||
18
Мисти
22.08.14
✎
19:58
|
Смешно!
Тпкой вариант ее устроил! Если СокрЛП(СтрДоговорСКЛ.PrimaryContractId)="" Тогда Cmd.Parameters(8).Value = null; Иначе Cmd.Parameters(8).Value = СтрДоговорСКЛ.PrimaryContractId; КонецЕсли; |
|||
19
mistеr
22.08.14
✎
20:01
|
(9) С чего это вдруг можно не задавать? Если параметр есть в тексте запроса, должно быть установлено значение.
|
|||
20
mistеr
22.08.14
✎
20:04
|
(18) Что за дурная привычка - сначала поднять панику на форуме, а потом пытаться разобраться самому.
|
|||
21
ДенисЧ
22.08.14
✎
20:31
|
(20) Это Миста^Hи
Оно такое.... |
|||
22
Мисти
22.08.14
✎
20:44
|
(20) А я делаю это параллельно.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |