Форум программистов, компьютерный форум, киберфорум
Наши страницы
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.98/64: Рейтинг темы: голосов - 64, средняя оценка - 4.98
Dzo
0 / 0 / 0
Регистрация: 05.01.2016
1

Простая обработка не работает

19.11.2009, 14:49. Просмотров 11567. Ответов 3
Метки нет (Все метки)

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

Есть простая обработка (писал сам)



Процедура Сформировать()

Таб=СоздатьОбъект("Таблица");

СпрСН=СоздатьОбъект("Справочник.СвойстваНоменклатуры");
СпрВС=СоздатьОбъект("Справочник.ВидыСвойств");
СпрН=СоздатьОбъект("Справочник.Номенклатура");

СпрН.ВыбратьЭлементы();
Пока СпрН.ПолучитьЭлемент()=1 Цикл
Товар=СпрН.ТекущийЭлемент();
Если Товар.ЭтоГруппа()=1 Тогда
Продолжить
КонецЕсли;
СпрВС.ИспользоватьРодителя(Товар);
СпрВС.НайтиПоНаименованию("Производитель");
Производитель=СпрВС.ТекущийЭлемент();
СпрСН.ИспользоватьРодителя(Производитель);
Производ=СпрСН.ЗначениеСвойства;
Сообщить(Товар + " " + Производ);
КонецЦикла;
КонецПроцедуры
Нужно что бы отобразился товар и рядом соответствующий производитель.

ошибок никаких нет. При запуске ertшки снизу написано. Выполняется обработка, однако сообщений не выводится, подскажите в чем может быть проблема? Заранее благодарен.

1с7.7 ТиС
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.11.2009, 14:49
Ответы с готовыми решениями:

простая обработка
Небольшой примерчик, в список значений должны записываться идентификаторы...

Не работает обработка оповещения
Добрый день, пытаюсь обновить форму списка с помощью обработки оповещения, но...

Простая обработка матрицы
Составить матрицу исходя из следующих условий: Задание:в каждой парно

Простая обработка ошибок в MS SQL
Господа! Наверняка это уже было, но ответьте пожалуйста на очень простой...

Простая обработка нажатия клавиши
Знаю что подобные темы были но мне нужно попроще.Я учусь c++ и для закрепления...

3
kyr
0 / 0 / 0
Регистрация: 04.12.2005
Сообщений: 1,588
19.11.2009, 15:16 2
ну во первых отладчик в руки и вперед! и каждую стоку смотреть
0
vbs
0 / 0 / 1
Регистрация: 22.06.2013
Сообщений: 9
19.11.2009, 15:56 3
Цитата Сообщение от Dzo
СпрСН.ИспользоватьРодителя(Производитель);
После этой строки вставь цикл выборки из справочника СпрСН
СпрСН.ВыбратьЭлементы();
Пока СпрСН.ПолучитьЭлемент() = 1 цикл
Производ=СпрСН.ЗначениеСвойства;
Сообщить(Товар + " " + Производ);
КонецЦикла
0
Mox 1s
0 / 0 / 0
Регистрация: 19.11.2009
Сообщений: 1
23.11.2009, 11:12 4
1.Для выборки из подчиненного справочника нужно применять ИспользоватьВладельца(), ИспользоватьРодителя() применяется для выбора элементов внутри группы одного справочника
2.Справочник "СвойстваНоменклатуры" подчинен справочнику "Номенклатура"
3.Справочник "СвойстваНоменклатуры" не имеет ни кода, ни наименования=>ищем по реквизиту, или делаем выборку по реквизиту
4.При выводе сообщения необходимо либо явное преобразование товара в тип "Строка": Строка(Товар), т.к. за ним следует строковое выражение, либо вывод наименования Товар.Наименование
Рабочий код:

Процедура Сформировать()
Таб=СоздатьОбъект("Таблица");

СпрСН=СоздатьОбъект("Справочник.СвойстваНоменклатуры");
СпрВС=СоздатьОбъект("Справочник.ВидыСвойств");
СпрН=СоздатьОбъект("Справочник.Номенклатура");

//СпрВС.ИспользоватьРодителя(Товар);
//Выносим из цикла, т.к. вид свойства для всех товаров общий - производитель
СпрВС.НайтиПоНаименованию("Производитель",0,1);
Производитель=СпрВС.ТекущийЭлемент();

СпрН.ВыбратьЭлементы();
Пока СпрН.ПолучитьЭлемент()=1 Цикл
Товар=СпрН.ТекущийЭлемент();
Если Товар.ЭтоГруппа()=1 Тогда
Продолжить
КонецЕсли;

//СпрСН.ИспользоватьРодителя(Производитель);
//Производ=СпрСН.ЗначениеСвойства;
СпрСН.ИспользоватьВладельца(Товар);
СпрСН.ВыбратьЭлементыПоРеквизиту("ВидСвойства",Производитель,1,0);
Пока СпрСН.ПолучитьЭлемент()=1 Цикл
Производ=СпрСН.ЗначениеСвойства;
Сообщить(Товар.Наименование + " " + Производ);
КонецЦикла;
КонецЦикла;
КонецПроцедуры
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.11.2009, 11:12

Простая обработка матриц в кратном цикле
Для каждого столбца матрицы найти среднее арифметическое элементов, больших...

Как добиться такого эффекта? Простая обработка портрета под карандаш
Подскажите, как добиться такого эффекта? Не получается кистью отрисовать. Где...

Не работает простая формула
Пытаюсь сделать уравнение, но никак не получается z =tg(x - 3) + lg(2y +5)....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru