7.7 Доступ к реквизитам документа

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем ree12, 17 авг 2009.

  1. TopicStarter Overlay
    ree12
    Offline

    ree12

    Регистрация:
    6 фев 2009
    Сообщения:
    24
    Симпатии:
    0
    Баллы:
    1
    Друзья!

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


    Код:
    Процедура ПриОткрытии()  
    Спр=СоздатьОбъект("Справочник.Сотрудники");
    НачальнаяДата='01.01.80';
    КонечнаяДата='01.01.10';
    Периодический = СоздатьОбъект("Периодический");
    Спр.ВыбратьЭлементы();
    Пока Спр.ПолучитьЭлемент()=1 Цикл
    Периодический.ИспользоватьОбъект("", Спр.ТекущийЭлемент());
    Периодический.ВыбратьЗначения(НачальнаяДата,КонечнаяДата);
    Периодический.ВыбратьЗначения();
    
    Пока Периодический.ПолучитьЗначение() = 1 Цикл
    Если Периодический.ТекущийДокумент().Вид()="ПриказОПриемеНаРаботу" Тогда
    ДокПри=Периодический.ТекущийДокумент();
    НомерПриказа=ДокПри.НомерДок;
    Сообщить(""+Спр+"  "+НомерПриказа);   
    Прервать;
    
    
    КонецЕсли;
    КонецЦикла;
    КонецЦикла;
    КонецПроцедуры
    
  2. Хряк
    Offline

    Хряк Профессионал в 1С

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    мда..., зачем перебирать сотрудников если нужен текущий? да ещё в при открытии
  3. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    мне необходимо взять номер документа текущего пользователя

    Мдааа - сильно сказано.

    Код:
    ТекущийЭлемент()
    
    
    в форме списка справочника применять не пробовали?
  4. TopicStarter Overlay
    ree12
    Offline

    ree12

    Регистрация:
    6 фев 2009
    Сообщения:
    24
    Симпатии:
    0
    Баллы:
    1
    Справочник Сотрудники, открываю сотрудника Иванов
    на форму добавил кнопку ОК, по кнопке происходит открытие нового документа где в реквизит должен добавиться номер приказа по которому приняли Иванова, но добавляется номер приказа согласно моему выше описанному коду номер приказа последнего в алфавите сотрудника Например: Якова
    где то ошибка в коде а найти не могу
  5. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    У сотрудника есть реквизит СостояниеФизлица. Он периодический. Двигается только документами. Дальше объяснять надо?
  6. Хряк
    Offline

    Хряк Профессионал в 1С

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    >где то ошибка в коде а найти не могу

    я ж те написал уже - цикл тупо перебирает сотров до конца. Выхода нет.
  7. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    не выбрал реквизит
    Код:
    Периодический.ИспользоватьОбъект("СостояниеФизлица", Спр.ТекущийЭлемент());
    
    
  8. TopicStarter Overlay
    ree12
    Offline

    ree12

    Регистрация:
    6 фев 2009
    Сообщения:
    24
    Симпатии:
    0
    Баллы:
    1
    так тоже самое, ставит номер приказа последнего в алфавите сотрудника
  9. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Посмотри в отладчике или выведи в окно сообщений значение ТекущийЭлемент()
  10. TopicStarter Overlay
    ree12
    Offline

    ree12

    Регистрация:
    6 фев 2009
    Сообщения:
    24
    Симпатии:
    0
    Баллы:
    1
    он выводит значение последнего в алфавите сотрудника
  11. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Что и требовалось доказать.... Справочник не спозиционирован. А алгоритм получения приказа - работает
  12. TopicStarter Overlay
    ree12
    Offline

    ree12

    Регистрация:
    6 фев 2009
    Сообщения:
    24
    Симпатии:
    0
    Баллы:
    1
    что в данной ситуации посоветуете делать?
  13. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    В модуле формы элемента справочника будет так:

    Код:
    Функция ДатьНомерПриказа()           
    Периодический = СоздатьОбъект("Периодический");    
    Периодический.ИспользоватьОбъект("СостояниеФизлица",ТекущийЭлемент());
    Периодический.ВыбратьЗначения();    
    Пока Периодический.ПолучитьЗначение() = 1 Цикл        
    Если Периодический.ТекущийДокумент().Вид()="ПриказОПриемеНаРаботу" Тогда            
    Возврат Периодический.ТекущийДокумент().НомерДок;        
    КонецЕсли;    
    КонецЦикла;
    Возврат "0";
    КонецФункции
    
    
    
  14. TopicStarter Overlay
    ree12
    Offline

    ree12

    Регистрация:
    6 фев 2009
    Сообщения:
    24
    Симпатии:
    0
    Баллы:
    1
    Всем спасибо за помощь!!!!!

Поделиться этой страницей