|
v7: 1с++ условие на документ неопределенного вида при запросе к регистру как? | ☑ | ||
---|---|---|---|---|
0
palpetrovich
25.08.16
✎
11:22
|
кодик не пашет:
SELECT Рег.Товар Рег.КоличествоОборот Количество FROM $РегистрОбороты.ПродажиУпр(:НачДата,:КонДата~,, ,ДокументПродажи = :ВыбДок, (Товар), (Количество)) Рег ибо ВыбДок= ' OT9NC ', а регистр хочет ' F OT9NC ', с видом т.е. |
|||
1
palpetrovich
25.08.16
✎
11:23
|
+(0) = "Рег.Товар" читать как "Рег.Товар,"
|
|||
2
Это_mike
25.08.16
✎
11:29
|
~
|
|||
3
Это_mike
25.08.16
✎
11:30
|
За что тебя als лишили и в СП забанили?
|
|||
4
palpetrovich
25.08.16
✎
11:36
|
(3) что, опять вопрос элементарный? ...не нахожу в МП пока
|
|||
5
palpetrovich
25.08.16
✎
11:42
|
+(4) блин "МП"="СП" ... и все-равно не нахожу
|
|||
6
Андрей_Андреич
naïve
25.08.16
✎
11:45
|
ЗначениеВДлиннуюСтрокуБД(<?>)
Синтаксис: ЗначениеВДлиннуюСтрокуБД(<Object>) Назначение: преобразует ссылочный тип данных 1С (Справочник, документ, перечисление) во внутренние представление системы, строковое представление вида и внутренний ИД объекта. Возвращает строку - внутреннего представления в виде: [Kind(4)][ID(6)][Sign(3)] = 13 символов. Возвращаемое значение: Строка 13 символов. Параметры: <Object> - значение любого хранимого типа. |
|||
7
Это_mike
25.08.16
✎
11:45
|
(4) Правила обозначения модификаторов
В тексте запроса модификаторы обозначаются символами “~” или “*” после имени параметра. Количество символов “~” после имени параметра определяет номер модификатора. Если после имени параметра не указан модификатор, то номер модификатора равен 0. Так как типом «Неопределенный» (char(23)) можно выразить любой тип 1С, для этого существует специальный модификатор, обозначаемый символом “*”, который определен для любого передаваемого типа 1С. Его номер 20. Модификаторы определены для следующих типов 1С: Строка .... .... Агрегатные типы (Перечисление, Справочник, Документ, ВидРасчета, Счет) 0: char(9) - внутренний идентификатор объекта (короткая строка 6+3); 1: char(13) - внутренний идентификатор объекта с видом (длинная строка 4+6 +3); 2: char(15) - внутренний идентификатор объекта с видом и типом (2+4+6+3) (на самом деле такой тип нигде в 1С не используется, модификатор существует исключительно для обратной совместимости); |
|||
8
Это_mike
25.08.16
✎
11:48
|
||||
9
palpetrovich
25.08.16
✎
11:55
|
спасибо, читаю... :)
|
|||
10
Это_mike
25.08.16
✎
11:59
|
(9) als есть?
|
|||
11
palpetrovich
25.08.16
✎
12:01
|
(10) дома есть, на работе нет
|
|||
12
Это_mike
25.08.16
✎
12:08
|
(11)
- Гиви, ти арбузы лубишь? -- кюшать - да, а так - нэт. © |
|||
13
palpetrovich
25.08.16
✎
12:40
|
(6) так получилось, спасибо
МДВ = CreateObject("MetaDataWork"); ВыбДок = МДВ.ЗначениеВДлиннуюСтрокуБД(ВыбДок); (7) так тоже, спасибо ,ДокументПродажи = :ВыбДок~, (Товар), (Количество)) Рег наверное буду пользовать второй вариант ...чисто из тго что меньше строк :) |
|||
14
Это_mike
25.08.16
✎
12:50
|
(13) способ с модификатором специально для этого и предназначен.
о чем сказано в документации. поэтому способ с преобразованием имеет право на жизнь, но неправилен. |
|||
15
varelchik
26.08.16
✎
09:02
|
(14) УстановитьТекстовыйПараметр()
еще ни кто не отменял. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |