|
Перевод номенклатуры. | ☑ | ||
---|---|---|---|---|
0
Tasechka
22.11.12
✎
14:34
|
Добрый всем день!
у меня есть функция перевода номенклатуры Функция Перевод (Товар) Запрос = Новый Запрос; Запрос.Текст= "ВЫБРАТЬ ПЕРВЫЕ 1 | НоменклатураКонтрагентов.НаименованиеНоменклатурыКонтрагента |ИЗ | РегистрСведений.НоменклатураКонтрагентов КАК НоменклатураКонтрагентов |ГДЕ | НоменклатураКонтрагентов.Номенклатура = &Номенклатура"; Запрос.УстановитьПараметр("Номенклатура", Товар); Результат = Запрос.Выполнить().Выбрать(); Если Результат.Следующий() Тогда Данные = Результат.НаименованиеНоменклатурыКонтрагента; Иначе Сообщить("Заполните регистр сведений"); КонецЕсли; Возврат Данные; КонецФункции //ПереводНоменклатуры Нужно перевести номенклатуру на украинский язык, перевод находится в регистре сведений. Выдает сообщение: "заполните регистр сведений", хотя он заполнен. В чем может быть ошибка? |
|||
1
Eugene_life
22.11.12
✎
14:36
|
(0) а где же фото?
|
|||
2
fizeg
22.11.12
✎
14:36
|
Товар - это ссылка или объект?
|
|||
3
butterbean
22.11.12
✎
14:37
|
значит там нет этого товара, ну и в отладчике посмотри до кучи
|
|||
4
rotting
22.11.12
✎
14:37
|
YНу значит для этой номенклатуры не заполнен
|
|||
5
Eugene_life
22.11.12
✎
14:38
|
(2) + то же самое хотел написать - скорее всего в регистре ссылка, а передаешь в параметр - объект
|
|||
6
Tasechka
22.11.12
✎
14:38
|
(2)ссылка
|
|||
7
Шапокляк
22.11.12
✎
14:39
|
Вместо Если Результат.Следующий()...
Сделайте Пока Результат.Следующий() Цикл Данные = Результат.НаименованиеНоменклатурыКонтрагента; Возврат Данные; КонецЦикла; Сообщить("Заполните регистр сведений"); |
|||
8
Tasechka
22.11.12
✎
14:40
|
(3),(4) есть этот товар в регистре
|
|||
9
Eugene_life
22.11.12
✎
14:42
|
(8) в регистре поле "Номенклатура" - тоже ссылка?
|
|||
10
Tasechka
22.11.12
✎
14:44
|
(9) да
|
|||
11
Eugene_life
22.11.12
✎
14:47
|
(10) Убери "Выбрать первые 1" из запроса
|
|||
12
sanja26
22.11.12
✎
14:49
|
(11) :))
|
|||
13
ssh2012
22.11.12
✎
14:49
|
(8) > есть этот товар в регистре
Не трать время, посмотри в отладчике, что передается в параметр товар. Другого не дано. |
|||
14
Tasechka
22.11.12
✎
14:56
|
(11) неа(( все равно говорит что заполните регистр
|
|||
15
ssh2012
22.11.12
✎
15:02
|
(14) Добавь код в твою функцию перед запросом. Выводится сообщение?
Если НЕ(ТипЗнч(Товар) = Тип("СправочникСсылка.Номенклатура") И ЗначениеЗаполнено(Товар)) Тогда Сообщить("Сиське"); //шуточное сообщение КонецЕсли; |
|||
16
Tasechka
22.11.12
✎
15:08
|
(15) да
|
|||
17
sanja26
22.11.12
✎
15:10
|
Курсы = РегистрыСведений.КурсыВалют;
ОтборВалют = Новый Структура("Валюта"); ОтборВалют.Валюта = ВыбВалюта; ВыборкаКурсовВалют = Курсы.Выбрать(,,ОтборВалют); Пока ВыборкаКурсовВалют.Следующий() Цикл КонецЦикла; |
|||
18
sanja26
22.11.12
✎
15:10
|
(18) так у вас не товар девушка)
|
|||
19
sanja26
22.11.12
✎
15:12
|
Номенклатура= РегистрыСведений.НоменклатураКонтрагентов ;
ОтборНоменклатура = Новый Структура("Номенклатура"); ОтборНоменклатура .Номенклатура= Товар; ВыборкаНоменклатуры = Номенклатура.Выбрать(,,ОтборНоменклатура ); Пока ВыборкаНоменклатуры .Следующий() Цикл КонецЦикла; |
|||
20
Tasechka
22.11.12
✎
15:19
|
(19) оно вывело, но старую номенклатуру, а не из регистра
|
|||
21
ssh2012
22.11.12
✎
15:21
|
(20) умеешь отладчиком пользоваться?
|
|||
22
sanja26
22.11.12
✎
15:22
|
(20)ВыборкаНоменклатуры.НаименованиеНоменклатурыКонтрагента
|
|||
23
sanja26
22.11.12
✎
15:22
|
фото нада
|
|||
24
Tasechka
22.11.12
✎
15:27
|
(21) нет(
|
|||
25
Tasechka
22.11.12
✎
15:29
|
(22) это куда?
|
|||
26
sanja26
22.11.12
✎
15:32
|
Номенклатура= РегистрыСведений.НоменклатураКонтрагентов ;
ОтборНоменклатура = Новый Структура("Номенклатура"); ОтборНоменклатура .Номенклатура= Товар; ВыборкаНоменклатуры = Номенклатура.Выбрать(,,ОтборНоменклатура ); Пока ВыборкаНоменклатуры .Следующий() Цикл Данные = ВыборкаНоменклатуры.НаименованиеНоменклатурыКонтрагента; КонецЦикла; |
|||
27
Tasechka
22.11.12
✎
15:34
|
(26) все равно на русском
|
|||
28
sanja26
22.11.12
✎
15:39
|
Номенклатура= РегистрыСведений.НоменклатураКонтрагентов ;
ОтборНоменклатура = Новый Структура("Номенклатура", Товар); ВыборкаНоменклатуры = Номенклатура.Выбрать(ОтборНоменклатура ); Пока ВыборкаНоменклатуры .Следующий() Цикл Данные = ВыборкаНоменклатуры.НаименованиеНоменклатурыКонтрагента; КонецЦикла; Измерение номенклатура сделай индексируемым и ведущим, если регистр сами добавляли. А вообще проверяй, что у тебя в "Товар" передается, точно ли ссылка, а не строка. в (15) сообщение должно было дать повод подумать |
|||
29
ILM
гуру
22.11.12
✎
15:41
|
Тасечка, добавьте контрагента "Украинский язык" и внесите для него все наименования товаров.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |