7.7 Ввод строки в документ с табличной частью

Тема в разделе "Общие вопросы "1С:Предприятие 7.7"", создана пользователем nvartfox, 7 июл 2009.

  1. TopicStarter Overlay
    nvartfox
    Offline

    nvartfox

    Регистрация:
    1 апр 2009
    Сообщения:
    36
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте,коллеги !
    Такая ситуация делаю документ в конфигурации Камин:Зарплата 2.0 в нем есть табличная часть, которая программного заполняется при вводе строки. Столкнулся со странностью, которая пользователя конечно не устроит, заключается в следующем создаю новый документ, при первом нажатии кнопки добавить ничего не происходит, форма документа переходит в состояние, когда требуется нажать иконку сохранения, нажимаю сохранить, дальше все работает, нормально
    Обработка ввода новой строки производится процедурой ПриВводеСтроки() Подскажите что может быть. Отладчик эту ситуацию не ловит
  2. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Что эначит:"форма документа переходит в состояние, когда требуется нажать иконку сохранения" - выдается диалогове окно?

    "при первом нажатии кнопки добавить ничего не происходит" - Не добавляется Т.Ч.? И по коавише Ins - тоже молчит?

    Возникает подозрение что прописан код
    Код:
    Если Выбран()=0 Тогда
    СтатусВозврата(0);
    Возврат;
    КонецЕсли;
    
    
  3. TopicStarter Overlay
    nvartfox
    Offline

    nvartfox

    Регистрация:
    1 апр 2009
    Сообщения:
    36
    Симпатии:
    0
    Баллы:
    1

    Вот код который исполняется
    Код:
    Процедура ПриВводеСтроки()    
    СтатусВозврата(1);
    л_СпрСотр = СоздатьОбъект("Справочник.Сотрудники");
    Если л_СпрСотр.Выбрать("Выберите сотрудника","ФормаСписка") = 1 Тогда
    л_Сотрудник = л_СпрСотр.ТекущийЭлемент();
    ЗаполнитьСтроку(л_Сотрудник);
    КонецЕсли;
    КонецПроцедуры            
    
    
    
  4. Бухгалтерский угодник
    Offline

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

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

    Код:
    Процедура ПриВводеСтроки()    	        
    л_СпрСотр = СоздатьОбъект("Справочник.Сотрудники");			
    Если л_СпрСотр.Выбрать("Выберите сотрудника","ФормаСписка") = 1 <span style='cursor: pointer; color:red' Onclick="window.open('http://www.1c-pro.ru/wiki/index.php/тогда')">Тогда	</span>
    л_Сотрудник = л_СпрСотр.ТекущийЭлемент();				
    ЗаполнитьСтроку(л_Сотрудник);			
    Иначе
    СтатусВозврата(0);
    КонецЕсли;
    КонецПроцедуры    
    
    
    А вообще - руки отрывать за такой код. Каждый раз создавать объект при вводе строки не рационально. Правильно так: Объявить переменную в начале модуля, а в конце создать объект.

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