| 
    
            
         
         | 
    
  | 
Печатная форма | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        VAUCHER    
     01.03.17 
            ✎
    08:07 
 | 
         
        Товарищи, простите новичка за возможно глупый вопрос. Возникла необходимость работать в 1с, а я мягко говоря не бум бум. 
 
        Необходимость создать печатную форму Приказ о приеме на работу на макете ворда. Начало положено. Стандартные реквизиты переносятся в макет без проблем. В вот с табличной частью какая то загвоздка. Не могу понять в чем дело. При формированиии формы пишет, что "Поле объекта Сотрудник не найдено" Вот такое вот я наваял: Функция Печать() Экспорт Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ | ПриемНаРаботуВОрганизацию.РаботникиОрганизации.( | Сотрудник КАК Сотрудник, | ФизЛицо КАК ФизЛицо, | ДатаПриема КАК ДатаПриема | ) |ИЗ | Документ.ПриемНаРаботуВОрганизацию КАК ПриемНаРаботуВОрганизацию |ГДЕ | ПриемНаРаботуВОрганизацию.Ссылка = &ТекущийДокумент"; Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл Результат.Вставить("Сотрудник", Выборка.Сотрудник); Результат.Вставить("ФизЛицо", Выборка.ФизЛицо); Результат.Вставить("ДатаПриема", Выборка.ДатаПриема); КонецЦикла; Макет = ПолучитьМакет("ПриемНаРаботу"); MSWord = Макет.Получить(); НомерДок = СсылкаНаОбъект.Номер; ДатаДок = Формат(СсылкаНаОбъект.Дата,"ДФ=dd.MM.yyyy"); Сотрудник = Выборка.Сотрудник; Попытка Документ = MSWord.Application.Documents(1); Документ.Activate(); Замена = Документ.Content.Find; Замена.Execute("[НомерДок]",Ложь,Истина,Ложь,,,Истина,,Ложь,НомерДок); Замена = Документ.Content.Find; Замена.Execute("[Дата]",Ложь,Истина,Ложь,,,Истина,,Ложь,ДатаДок); Замена = Документ.Content.Find; Замена.Execute("[Сотрудник]",Ложь,Истина,Ложь,,,Истина,,Ложь,Сотрудник); Исключение Сообщить(ОписаниеОшибки()); MSWord.Application.Quit(); КонецПопытки; КонецФункции // Печать()  | 
|||
| 
    1
    
        bodri    
     01.03.17 
            ✎
    08:12 
 | 
         
        Вот это зачем?
 
        Пока Выборка.Следующий() Цикл Результат.Вставить("Сотрудник", Выборка.Сотрудник); Результат.Вставить("ФизЛицо", Выборка.ФизЛицо); Результат.Вставить("ДатаПриема", Выборка.ДатаПриема); КонецЦикла; Это не надо делать после окончания выборки: Сотрудник = Выборка.Сотрудник;  | 
|||
| 
    2
    
        bodri    
     01.03.17 
            ✎
    08:15 
 | 
         
        Думается, что должно быть примерно так:
 
        Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Сотрудник = Новый СписокЗначений; Пока Выборка.Следующий() Цикл Сотрудник.Добавить(Выборка.Сотрудник); КонецЦикла; хотя тоже спорно.  | 
|||
| 
    3
    
        VAUCHER    
     01.03.17 
            ✎
    08:18 
 | 
         
        Нет, всё тоже самое. Может где неправильную ссылку на документ указал. Ничего понять не могу(     
         | 
|||
| 
    4
    
        nordbox    
     01.03.17 
            ✎
    08:23 
 | 
         
        я дико извиняюсь, а вот в текущем документе вообще то зачем запрос делать??     
         | 
|||
| 
    5
    
        VAUCHER    
     01.03.17 
            ✎
    08:23 
 | 
         
        Потом надо будет забрать ещё несколько параметров. Как ДатаДоговора, ДатаПриема и т.д. С одним надо разобраться     
         | 
|||
| 
    6
    
        nordbox    
     01.03.17 
            ✎
    08:24 
 | 
         
        может быть я обшибаюсь но сотрудник это вроде бы морда физического лица     
         | 
|||
| 
    7
    
        VAUCHER    
     01.03.17 
            ✎
    08:26 
 | 
         
        (4) Я тоже извиняюсь)) Просто не знаю как вообще что можно реализовать. Дату Документа и номер я забрал без проблем, без запроса, а вот Сотрудника уже не получается. Впервые в жизни 1с открыл можно сказать     
         | 
|||
| 
    8
    
        nordbox    
     01.03.17 
            ✎
    08:26 
 | 
         
        Конфа то какая?     
         | 
|||
| 
    9
    
        VAUCHER    
     01.03.17 
            ✎
    08:26 
 | 
         
        (8) ЗУП 2,0     
         | 
|||
| 
    10
    
        nordbox    
     01.03.17 
            ✎
    08:32 
 | 
         
        вот тут бесплатная лежит внешняя
 
        http://buh-it.ru/vneshnyaya-forma-priem-na-rabotu-t1-i-kadrovoe-peremeshhenie-t5-s-nadbavkami-dlya-zup-2-5/ или тебе надо как правильно код написать?  | 
|||
| 
    11
    
        VAUCHER    
     01.03.17 
            ✎
    08:34 
 | 
         
        (10) Конечно лучше в коде разобраться. И мне именно на шаблоне Worda надо.     
         | 
|||
| 
    12
    
        nordbox    
     01.03.17 
            ✎
    08:36 
 | 
         
        Тебе в данном случае пофиг ворд это будет или таб документ, хоть в окно сообщений выводи, у тебя задача получить реквизиты из документа
 
        ща посмотрю, есть ли у меня ЗУП 2.5 что бы тебе что говорить  | 
|||
| 
    13
    
        nordbox    
     01.03.17 
            ✎
    08:44 
 | 
         
        У меня такой конфы нет, но не все так плохо, что бы самому не городить:
 
        Открой Общие модули и найди там модуль КадровыйУчет открой и посмотри что там  | 
|||
| 
    14
    
        VAUCHER    
     01.03.17 
            ✎
    08:49 
 | 
         
        (13) Именно КадровыйУчет модуля нет. Есть кадровоеПеремещениеОрганизации     
         | 
|||
| 
    15
    
        nordbox    
     01.03.17 
            ✎
    08:50 
 | 
         
        Ну значит как то по другому называется, еще смотри что там есть
 
        вот тут тоже лежит бесплатная https://yadi.sk/d/xusXH5TY3DYzzW открывай и смотри как там делается  | 
|||
| 
    16
    
        nordbox    
     01.03.17 
            ✎
    08:56 
 | 
         
        (14) Вот по первой ссылке скачай, открой форму Т-1 там модуль объекта и посмотри, там доступно и просто вроде бы написано.
 
        конфы нет, судить не могу.  | 
|||
| 
    17
    
        nordbox    
     01.03.17 
            ✎
    08:56 
 | 
         
        +16 что бы переделать в вород там ума много не надо )     
         | 
|||
| 
    18
    
        darius357    
     01.03.17 
            ✎
    09:04 
 | 
         
        ну как всегда побакланили, и нифига толку     
         | 
|||
| 
    19
    
        Масянька    
     01.03.17 
            ✎
    09:06 
 | 
         
        А если "Сотрудник = Выборка.Сотрудник;" поменять на "Сотрудник = Результат.Сотрудник;"?     
         | 
|||
| 
    20
    
        FIXXXL    
     01.03.17 
            ✎
    09:24 
 | 
         
        (19) не надо велосапедить
 
        наверняка в есть же у документа рабочие печ.формы, вот там и смотри код, как инфа для печати собирается  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |