Имя: Пароль:
1C
1С v8
Как получить цену в форме из Двух справочников
,
0 Sa6nek6
 
10.12.12
21:29
&НаКлиенте
Процедура КлассНомеровКлассНомеровПриИзменении(Элемент)
     Стр = Элементы.КлассНомеров.ТекущиеДанные;
     Стр.Цена = ПолучитьЦенуНомер(Стр.НомерИУслуги);
     Стр.Цена = ПолучитьЦенуУслуги(Стр.НомерИУслуги);
     РасчетСуммыКлассНомеров();
     КонецПроцедуры

&НаСервереБезКонтекста
Функция ПолучитьЦенуНомер    (Номера)

   Запрос = Новый Запрос;
   Запрос.Текст =
       "ВЫБРАТЬ
       |    Номера.Цена
       |ИЗ
       |    Справочник.Номера КАК Номера
       |ГДЕ
       |    Ссылка = &Ссылка";

   Запрос.УстановитьПараметр("Ссылка", Номера);
   Результат = Запрос.Выполнить();
   Выборка = Результат.Выбрать();
   Выборка.Следующий();
   Возврат Выборка.Цена;

КонецФункции

&НаСервереБезКонтекста
Функция ПолучитьЦенуУслуги(Услуги)

   Запрос = Новый Запрос;
   Запрос.Текст =
       "ВЫБРАТЬ
       |    Цена
       |ИЗ
       |    Справочник.Услуги
       |ГДЕ
       |    Ссылка = &Ссылка";

   Запрос.УстановитьПараметр("Ссылка",Услуги);
   Результат = Запрос.Выполнить();
   Выборка = Результат.Выбрать();
   Выборка.Следующий();
   Возврат Выборка.Цена;

КонецФункции
1 Sa6nek6
 
10.12.12
21:31
Так получает только Услуг
2 Sa6nek6
 
10.12.12
21:32
&НаКлиенте
Процедура КлассНомеровКлассНомеровПриИзменении(Элемент)
     Стр = Элементы.КлассНомеров.ТекущиеДанные;
    !!! Стр.Цена = ПолучитьЦенуНомер(Стр.НомерИУслуги);
  !!!!   Стр.Цена = ПолучитьЦенуУслуги(Стр.НомерИУслуги);
     РасчетСуммыКлассНомеров();
     КонецПроцедуры

Если поменяю эти две строчки местами тогда Цена Номар
3 Sa6nek6
 
10.12.12
21:33
Навер эт воощпе не правильно написано чет я так сейчас понимаю(
4 Sa6nek6
 
10.12.12
21:44
ПОМОГИТЕ ПОЖАЛУЙСТА
5 eklmn
 
гуру
10.12.12
21:52
лошара  Стр.Цена последнее что будет?
6 eklmn
 
гуру
10.12.12
21:53
намекаю  Стр.Ценаномер и  Стр.Ценауслуга
7 Sa6nek6
 
10.12.12
21:56
не понял((
8 Sa6nek6
 
10.12.12
21:58
реквизит документа составной Справочник Номера и Услуги
9 Sa6nek6
 
10.12.12
21:59
Стр.??.Цена - так?
10 dunpil
 
10.12.12
22:03
Если ..... Тогда
Стр.Цена = ПолучитьЦенуНомер(Стр.НомерИУслуги);
Иначе
Стр.Цена = ПолучитьЦенуУслуги(Стр.НомерИУслуги);
КонецЕсли;

Как-то в таком ключе, мне кажется
11 Sa6nek6
 
10.12.12
22:04
(10)
так пробовал, не нащел что написать после Если
12 dunpil
 
10.12.12
22:08
Если ТипЗнч(Стр.Цена) = Тип("СправочникСсылка.Номера") Тогда
   ...
КонецЕсли;
13 Sa6nek6
 
10.12.12
22:12
Спасибо буду шаманить)
14 Sa6nek6
 
10.12.12
22:12
Большое!
15 Sa6nek6
 
10.12.12
22:16
Если ТипЗнч(Стр.НомерИУслуг) = Тип("СправочникСсылка.Номера")
Вот так получилося!
16 dunpil
 
10.12.12
22:24
Ура!