helpf.pro
Регистрация

v8: как сделать проверку

novichok20
03.10.2014 10:01Прочитано: 3641

если материал шкаф тогда цена одна .если материал поменяется цена по другому считается

Материал=Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

Пока Материал.Следующий() цикл

Область1.Параметры.Материал = Материал.Материал;

Область1.Параметры.Количество = Материал.Количество;

Область1.Параметры.Цена = Материал.Цена;

ТД.Вывести(Область1);

КонецЦикла;

Yandex
Возможно, вас также заинтересует
Реклама на портале
E_Migachev
03.10.2014 10:51Ответ № 1

Тебе нужно добавить проверку, что-то типо:

Код 1C v 8.х
 Если Материал = "Шкаф" Тогда   
Код 1C v 8.х
  цена = ....   
Код 1C v 8.х
 Иначе   
Код 1C v 8.х
 Цена = что-то еще   
Код 1C v 8.х
 Конецесли   
novichok20
03.10.2014 11:03Ответ № 2

я так делал

  Материал=Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

Пока Материал.Следующий() цикл

Если Материал = "Шкаф" Тогда

Область1.Параметры.Материал = Материал.Материал;

Область1.Параметры.Количество = Материал.Количество;

Область1.Параметры.Цена = Материал.Цена;

Иначе

Область1.Параметры.Материал = Материал.Материал;

Область1.Параметры.Количество = Материал.Количество;

Область1.Параметры.Цена = Материал.Цена*2;

ТД.Вывести(Область1);

КонецЦикла;

выпоняет только второе

E_Migachev
03.10.2014 11:16Ответ № 3

Попробуй:

Если СокрЛП(Материал.Наименование) = "Шкаф" Тогда

novichok20
03.10.2014 11:31Ответ № 4

ни как

E_Migachev
03.10.2014 11:31Ответ № 5

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

novichok20
03.10.2014 11:34Ответ № 6

1

E_Migachev
03.10.2014 12:27Ответ № 7

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

  • по наименованию
  • по свойству или реквизиту

novichok20
03.10.2014 12:40Ответ № 8

если я правильно понял то реквизиту и ТЧ

novichok20
03.10.2014 12:40Ответ № 9

из тч

Jonsony
04.10.2014 14:03Ответ № 10

вообще-то ваш код легко урезается

Код 1C v 8.х
 Пока Материал.Следующий() Цикл
Область1.Параметры.Материал = Материал.Материал;
Область1.Параметры.Количество = Материал.Количество;
Если Материал.Материал = "Шкаф" Тогда //может так должно быть?
Область1.Параметры.Цена = Материал.Цена;
Иначе
Область1.Параметры.Цена = Материал.Цена*2;
ТД.Вывести(Область1);
КонецЦикла;
TValka
07.10.2014 13:22Ответ № 11

Если ВРЕГ(СокрЛПП(Материал.Материал.Наименование)) = "ШКАФ" Тогда

и еще Материал.Метериал каккого типа Объект или Ссылка?

и сравнивать по наименование не совсем корректно!

novichok20
13.10.2014 13:20Ответ № 12

шкаф это элемент справочника

qNas
15.10.2014 07:27Ответ № 13
Код 1C v 8.3
 Если Материал.Материал.Наименование = "Шкаф" Тогда //Ссылку со строкой сравниваешь!    
qNas
15.10.2014 07:28Ответ № 14

И в отладчике нормально проверь, какой тип и как наименование отображается shift+F9.

novichok20
10.11.2014 12:33Ответ № 15
Вопрос закрыт!
Подсказка: Для быстрого перемещения к последнему ответу или к вопросу используйте или .
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.