Имя: Пароль:
1C
1С v8
А что, ВЫРАЗИТЬ при запросе к справочнику и регистру работает по разному?
0 palpetrovich
 
19.04.12
13:44
|        ВЫРАЗИТЬ(ЕСТЬNULL(НоменклатураКонтрагентов.НаименованиеНоменклатурыКонтрагента, """") КАК СТРОКА(100)) КАК НаименованиеНоменклатурыКонтрагента
       |    ИЗ
       |        РегистрСведений.НоменклатураКонтрагентов КАК НоменклатураКонтрагентов
//"New Nasci 3000sdh                                                                                   "
       |        ВЫРАЗИТЬ(Номенклатура.Наименование КАК СТРОКА(100)) КАК НаименованиеНоменклатурыКонтрагента
       |    ИЗ
       |        Справочник.Номенклатура КАК Номенклатура
//"New Nasci 3000sdh"

что за беда? или это руки?
1 pumbaEO
 
19.04.12
13:45
это руки
2 pumbaEO
 
19.04.12
13:46
НаименованиеНоменклатурыКонтрагента <> Номенклатура.Наименование
3 Wobland
 
19.04.12
13:46
НаименованиеНоменклатурыКонтрагента в регистре какого типа? Наименование в справочнике какого?
4 palpetrovich
 
19.04.12
13:49
(3) 1 - в регистре сведений, 2 - Номенклатура
5 Wobland
 
19.04.12
13:50
(4) какой тип имеют названные реквизиты?
6 palpetrovich
 
19.04.12
13:50
(2) речь идет о строке, если-б вместо "НаименованиеНоменклатурыКонтрагента" было  "Наименование100" - было-ms понятней? :)
7 palpetrovich
 
19.04.12
13:51
(5) строки. В комментарии я указал значения из отладчика
8 Wobland
 
19.04.12
13:52
(7) переменные? фиксированные? хотя, мож, я и не туда копаю
9 palpetrovich
 
19.04.12
13:56
(8) стандартный УТ, Наменование в справочнике ...оно и в африке наименование :)
проверил в консоли ВЫРАЗИТЬ(Номенклатура.Наименование КАК СТРОКА(5)) КАК НаименованиеНоменклатурыКонтрагента -  обрезает исправно, а вот добавлять пробелы  не хочет
10 Ненавижу 1С
 
гуру
19.04.12
13:59
наверное дело в том, что НаименованиеНоменклатурыКонтрагента строка неограниченной длины
11 palpetrovich
 
19.04.12
13:59
ладно, фик с ним, хотел обойтись одним полем НаименованиеНоменклатурыКонтрагента для дальнейшего отбора в другой ТЗ, видно прийдется добавлять поле НаименованиеНоменклатуры для отбора по справочнику
12 palpetrovich
 
19.04.12
14:00
(10) да нет, Строка(100)
13 palpetrovich
 
19.04.12
14:00
+12 как и в справочнике
14 Wobland
 
19.04.12
14:02
(9) странно

ВЫБРАТЬ
   выразить(Номенклатура.Наименование как строка(200)),
   выразить("100" как строка(200))
ИЗ
   Справочник.Номенклатура КАК Номенклатура


добивает пробелами в обоих случаях
15 Grobik
 
19.04.12
14:05
РегистрСведений Строка(100) всегда будет выдавать 100 символов.
при последующей обработке может помочь Лев(НоменклатураКонтрагентов, N) и сравнивать с Лев(Номенклатура + "                                                     ", N)
16 palpetrovich
 
19.04.12
14:07
(14) сам в шоке :)
(15) с регистром все нормально, почему-то ц меня в справочнике не дополняет до 100
17 palpetrovich
 
19.04.12
14:08
(14) кста, а как ты определяешь в консоли, что строка таки 200?
18 Wobland
 
19.04.12
14:10
ещё пример с неограниченной строкой (всегда добивалось)
(17) потому что 200 на глаз видно ;)

ВЫБРАТЬ
   ВЫРАЗИТЬ("100" КАК СТРОКА(200)) КАК Поле1,
   ВЫРАЗИТЬ(РеализацияТоваровУслугТовары.Номенклатура.Наименование КАК СТРОКА(200)) КАК Поле2,
   ВЫРАЗИТЬ(РеализацияТоваровУслугТовары.Ссылка.Комментарий КАК СТРОКА(200)) КАК Поле3
ИЗ
   Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
19 Wobland
 
19.04.12
14:11
+(18) двойной клик прям с кавычками показывает
20 palpetrovich
 
19.04.12
14:12
(19) аааа, у меня м консоль бракованная, выразить("100" как строка(200)) - показывает "100"
21 Wobland
 
19.04.12
14:14
(20) на 8.2.15.289 то же самое, на 8.1.15.14 с пробелами
22 palpetrovich
 
19.04.12
14:16
(21) вон оно че михалыч :) ...у меня 8.2.14.540
23 palpetrovich
 
19.04.12
14:17
ладно, спишем на платформу.
Всем спасибо, буду строить костыли типа как в (15)
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс