Имя: Пароль:
1C
1С v8
Почему при выборе из списка значение поля Субконто1 не заполняется?
0 gutalin
 
11.10.13
10:25
&НаКлиенте
Процедура СчетЗатрат1ПриИзменении(Элемент, СтандартнаяОбработка)
        
    ЕСЛИ НЕ Объект.СчетЗатрат.Пустая()
    ТОГДА
    
    z=Объект.СчетЗатрат.ПолучитьОбъект();
    кол=Объект.СчетЗатрат.ВидыСубконто.Количество();
    Список = Новый СписокЗначений;
      н=0;
      Пока н <> кол Цикл
    Список.Добавить(Объект.СчетЗатрат.ВидыСубконто.Получить(н).ВидСубконто);
    н=н+1;
    КонецЦикла;
    ВыбЭлемент=ВыбратьИзСписка(Список,Элементы.Субконто3);
        
    Объект.Субконто1=Список.ВыбратьЭлемент("Выберите тип цен.",ВыбЭлемент );
       КонецЕсли;

    
    КонецПроцедуры
1 gutalin
 
11.10.13
11:17
хммм.....
2 GROOVY
 
11.10.13
11:25
1. Зачем получать объект?
2. Каким макаром вы объект на клиенте пытаетесь получить?
3. Зачем читать количество строк субконто?
4. Каким макаром вы это делаете на клиенте?
5. Использование модальных окон не рекомендуется.
3 GROOVY
 
11.10.13
12:14
хммм....
4 gutalin
 
11.10.13
13:12
На сервере не работает какая-то из функций...
читаю количество видов субконто чтобы потом по видам субконто пройтись циклом и добавить в список
5 GROOVY
 
11.10.13
13:47
(4) И все же, можно по пунктам ответить? Ну за исключением п5.

Перебрать субконто можно циклом обхода коллекций

Для каждого СтрокаСубконто ИЗ Объект.СчетЗатрат,ВидыСубконто Цикл
6 Жан Пердежон
 
11.10.13
13:50
(4) не работает функция "СчетЗатрат1ПриИзменении", там все нужно просто удалить и написать заново
7 gutalin
 
14.10.13
17:40
Благодаря вашим ответам переделала код, спасибо, но программирую я редко, посмотрите  пожалуйста код....

ЕСЛИ НЕ Объект.СчетЗатрат.Пустая()
ТОГДА
кол=Объект.СчетЗатрат.ВидыСубконто.Количество();
Массив=новый массив(кол);
н=0;
ПОКА н <> кол ЦИКЛ
Массив.Вставить(н,Объект.СчетЗатрат.ВидыСубконто.Получить(н).ВидСубконто);
н=н+1;
КОНЕЦЦИКЛА;

Хочу запрограммировать форму 1с так, чтобы при выборе счета затрат выпадал связанные с субконто справочник, например при выборе субконто номенклатура выпал справочник номенклатура, не совсем понятно как это можно сделать....
8 GROOVY
 
15.10.13
15:27
(7) Зачем получать массив из таблицы субконто? Можно просто обратиться к колонке ВидСубконто и все.

>> при выборе счета затрат выпадал связанные с субконто справочник

Это в свойствах реквизитов настраивается, называется связь по типу.
9 gutalin
 
16.10.13
11:01
связь по типу да, делается, но мне сказали программно надо, воть..
10 gutalin
 
17.10.13
10:05
Написала вот так , правда не работает, но более правильно выглядит, интересно почему не рабоатет работаетОбъект.СчетЗатрат.ВидыСубконто.Получить(0).ВидСубконто.ТипЗначения.ПривестиЗначение(Объект.Субконто1);
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший