|
Как удалить область 1п. | ☑ | ||
---|---|---|---|---|
0
JaZDik
01.10.13
✎
10:21
|
Ребят, есть у кого время поглядите пожалуйста. Что нужно сделать? Если не меняется Подразделение и (или) должность, а только оклад. Как исключить пункт 1? Т.е. п. 1 удалить, а пункты 2,3,4,5 сделать на пункт ниже т.е. 1,2,3,4. Буду очень благадарен, если покажете где и чего нужно дописать. Ссылка на внешнюю обработку ниже. Конфигурация ЗУП внешняя обработка для документа КадровоеПеремещениеОрганизаций
http://files.mail.ru/57C3E955BE9D495ABE952C7D6E07AB74 |
|||
1
Fish
01.10.13
✎
10:25
|
Сколько платишь?
|
|||
2
JaZDik
01.10.13
✎
10:28
|
(1) Ну это задание просто для меня дано для учебы. Я только начинаю.
|
|||
3
Галахад
гуру
01.10.13
✎
10:30
|
Ну, тогда учись. Как научишься, если за тебя сделают?
|
|||
4
JaZDik
01.10.13
✎
11:07
|
(3) (1) Можете тода посоветовать?
|
|||
5
Fish
01.10.13
✎
11:25
|
(4) Посоветовать, конечно можем. Пиши, что сделал, что не получается. Задавай конкретные вопросы.
|
|||
6
JaZDik
01.10.13
✎
11:34
|
Тогда забудем про этот пунк 1 =) попробую сам разобраться
(5) Как в запросе получить фактический адрес. Адрес прописки вывел, а адрес фактический не получаеться. |
|||
7
JaZDik
01.10.13
✎
11:34
|
Функция РазложитьФИО(Знач ФИОСтр)
ФИОСтр = СокрЛП(ФИОСтр); ФИО = Новый Структура("Фамилия, Имя, Отчество", "", "", ""); ПервыйПробел = Найти(ФИОСтр, " "); Если ПервыйПробел = 0 Тогда ФИО.Фамилия = ФИОСтр; Возврат ФИО; КонецЕсли; ФИО.Фамилия = СокрЛП(Лев(ФИОСтр, ПервыйПробел - 1)); ФИОСтр = СокрЛП(Сред(ФИОСтр, ПервыйПробел + 1)); ВторойПробел = Найти(ФИОСтр, " "); Если ВторойПробел = 0 Тогда ФИО.Имя = ФИОСтр; Возврат ФИО; КонецЕсли; ФИО.Имя = СокрЛП(Лев(ФИОСтр, ВторойПробел - 1)); ФИО.Отчество = СокрЛП(Сред(ФиоСтр, ВторойПробел + 1)); Возврат ФИО; КонецФункции Функция Печать() Экспорт Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ | КадровоеПеремещениеОрганизацийРаботникиОрганизации.Сотрудник, | КадровоеПеремещениеОрганизацийРаботникиОрганизации.Сотрудник КАК РаботникИН, | ПаспортныеДанныеФизЛиц.ДокументСерия КАК Серия, | ПаспортныеДанныеФизЛиц.ДокументНомер КАК Номер, | ПаспортныеДанныеФизЛиц.ДокументДатаВыдачи КАК ДатаВыд, | ПаспортныеДанныеФизЛиц.ДокументКемВыдан КАК КемВыдан, | ПаспортныеДанныеФизЛиц.ФизЛицо.ИНН КАК ИНН, | ПаспортныеДанныеФизЛиц.ФизЛицо.СтраховойНомерПФР КАК СтрахНомер, | ПаспортныеДанныеФизЛиц.ФизЛицо.ДатаРождения КАК ДатаРож, | СотрудникиОрганизаций.ПодразделениеОрганизации КАК Подразделение, | СотрудникиОрганизаций.Должность КАК Должность, | СотрудникиОрганизаций.ТарифнаяСтавка КАК Оклад, | СотрудникиОрганизаций.ДатаНачала КАК ДатаДог, | СотрудникиОрганизаций.НомерДоговора КАК НомерДог, | КадровоеПеремещениеОрганизацийРаботникиОрганизации.Ссылка.Номер КАК Номер1, | КадровоеПеремещениеОрганизацийРаботникиОрганизации.Ссылка.Дата КАК Дата1, | КадровоеПеремещениеОрганизацийРаботникиОрганизации.Ссылка.Ответственный.Наименование КАК Работодатель, | СотрудникиОрганизаций.ДатаДоговора КАК ДатаОт, | АдресРегистрации.Представление КАК Поле1 |ИЗ | Документ.КадровоеПеремещениеОрганизаций.РаботникиОрганизации КАК КадровоеПеремещениеОрганизацийРаботникиОрганизации | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ПаспортныеДанныеФизЛиц КАК ПаспортныеДанныеФизЛиц | ПО КадровоеПеремещениеОрганизацийРаботникиОрганизации.ФизЛицо = ПаспортныеДанныеФизЛиц.ФизЛицо | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций | ПО КадровоеПеремещениеОрганизацийРаботникиОрганизации.ФизЛицо = СотрудникиОрганизаций.Физлицо | И КадровоеПеремещениеОрганизацийРаботникиОрганизации.Сотрудник.НомерДоговора = СотрудникиОрганизаций.НомерДоговора | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК АдресРегистрации | ПО КадровоеПеремещениеОрганизацийРаботникиОрганизации.ФизЛицо = АдресРегистрации.Объект |ГДЕ | КадровоеПеремещениеОрганизацийРаботникиОрганизации.Ссылка = &ТекущийДокумент"; Шапка = Запрос.Выполнить().Выбрать(); Шапка.Следующий(); ФИО = РазложитьФИО(Шапка.РаботникИН); ТабДокумент = Новый ТабличныйДокумент; ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_КадровоеПеремещениеОрганизацийРаботникиОрганизации_ДополнительноеСоглашение"; Макет = ПолучитьМакет("ДополнительноеСоглашение"); ОбластьМакета = Макет.ПолучитьОбласть("Общее"); ОбластьМакета.Параметры.РаботникИН = ФИО.Фамилия + " " + Лев(ФИО.Имя,1) + "." + Лев(ФИО.Отчество,1) + "."; ОбластьМакета.Параметры.Работник = Шапка.Сотрудник.Наименование; ОбластьМакета.Параметры.Серия = Шапка.Серия; ОбластьМакета.Параметры.Номер = Шапка.Номер; ОбластьМакета.Параметры.ДатаВыд = Шапка.ДатаВыд; ОбластьМакета.Параметры.КемВыдан = Шапка.КемВыдан; ОбластьМакета.Параметры.ИНН = Шапка.ИНН; ОбластьМакета.Параметры.СтрахНомер = Шапка.СтрахНомер; ОбластьМакета.Параметры.ДатаРож = Шапка.ДатаРож; ОбластьМакета.Параметры.ДатаДог = Шапка.ДатаДог; ОбластьМакета.Параметры.НомерДог = Шапка.НомерДог; ОбластьМакета.Параметры.Подразделение = Шапка.Подразделение; ОбластьМакета.Параметры.Должность = Шапка.Должность; ОбластьМакета.Параметры.Оклад = Шапка.Оклад; ОбластьМакета.Параметры.РабДата = ТекущаяДата(); ОбластьМакета.Параметры.Дата1 = Шапка.Дата1; ОбластьМакета.Параметры.Номер1 = Шапка.Номер1; ОбластьМакета.Параметры.Работодатель = Шапка.Работодатель; ОбластьМакета.Параметры.ДатаОт = Шапка.ДатаОт; ОбластьМакета.Параметры.Поле1 = Шапка.Поле1; ТабДокумент.Вывести(ОбластьМакета); Возврат ТабДокумент; КонецФункции |
|||
8
JaZDik
01.10.13
✎
11:38
|
Через консоль запросов попробывал вроде получается, а через конструктор запросов нет... в конструкторе условие не так выражается вот код из консоли
ВЫБРАТЬ КонтактнаяИнформация.Представление ИЗ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация ГДЕ КонтактнаяИнформация.Тип = &Тип И КонтактнаяИнформация.Вид = &Вид И КонтактнаяИнформация.Объект = &Объект |
|||
9
Nenaviwu1c20
01.10.13
✎
11:40
|
Заданее конкретней плз.Что удалить и где твои пункты в коде?
|
|||
10
Fish
01.10.13
✎
11:44
|
(8) " в конструкторе условие не так выражается" - ничего не понял.
|
|||
11
JaZDik
01.10.13
✎
11:45
|
(9) В коде я еще не прописывал. Внешняя обработка выложена по ссылочке. в макете область 1 нужно удалить, если подразделене и должность сотрудника не меняется. Если подразделене и должность сотрудника поменялась то пункт 1 т.е. область1 отсавить
|
|||
12
JaZDik
01.10.13
✎
11:45
|
(10) 5 сек
|
|||
13
JaZDik
01.10.13
✎
11:47
|
Код условия в консоли запроса
ВЫБРАТЬ КонтактнаяИнформация.Представление ИЗ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация ГДЕ КонтактнаяИнформация.Тип = &Тип И КонтактнаяИнформация.Вид = &Вид И КонтактнаяИнформация.Объект = &Объект Код условия в конструкторе запроса ВЫБРАТЬ КонтактнаяИнформация.Представление ИЗ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация ГДЕ КонтактнаяИнформация.Тип = &&ТекущийДокумент И КонтактнаяИнформация.Вид = &&ТекущийДокумент И КонтактнаяИнформация.Объект = &&ТекущийДокумент"; |
|||
14
JaZDik
01.10.13
✎
12:00
|
(10) щас попробывал так и пишет
Не удалось сформировать внешнюю печатную форму! Ошибка при вызове метода контекста (Выполнить): {(35, 34)}: Не задано значение параметра "Объект" И КонтактнаяИнформация.Объект = <<?>>&Объект Функция Печать() Экспорт Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ | КадровоеПеремещениеОрганизацийРаботникиОрганизации.Сотрудник, | КадровоеПеремещениеОрганизацийРаботникиОрганизации.Сотрудник КАК РаботникИН, | ПаспортныеДанныеФизЛиц.ДокументСерия КАК Серия, | ПаспортныеДанныеФизЛиц.ДокументНомер КАК Номер, | ПаспортныеДанныеФизЛиц.ДокументДатаВыдачи КАК ДатаВыд, | ПаспортныеДанныеФизЛиц.ДокументКемВыдан КАК КемВыдан, | ПаспортныеДанныеФизЛиц.ФизЛицо.ИНН КАК ИНН, | ПаспортныеДанныеФизЛиц.ФизЛицо.СтраховойНомерПФР КАК СтрахНомер, | ПаспортныеДанныеФизЛиц.ФизЛицо.ДатаРождения КАК ДатаРож, | СотрудникиОрганизаций.ПодразделениеОрганизации КАК Подразделение, | СотрудникиОрганизаций.Должность КАК Должность, | СотрудникиОрганизаций.ТарифнаяСтавка КАК Оклад, | СотрудникиОрганизаций.ДатаНачала КАК ДатаДог, | СотрудникиОрганизаций.НомерДоговора КАК НомерДог, | КадровоеПеремещениеОрганизацийРаботникиОрганизации.Ссылка.Номер КАК Номер1, | КадровоеПеремещениеОрганизацийРаботникиОрганизации.Ссылка.Дата КАК Дата1, | КадровоеПеремещениеОрганизацийРаботникиОрганизации.Ссылка.Ответственный.Наименование КАК Работодатель, | СотрудникиОрганизаций.ДатаДоговора КАК ДатаОт, | АдресРегистрации.Представление КАК Поле1, | КонтактнаяИнформация.Представление КАК Поле2 |ИЗ | Документ.КадровоеПеремещениеОрганизаций.РаботникиОрганизации КАК КадровоеПеремещениеОрганизацийРаботникиОрганизации | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ПаспортныеДанныеФизЛиц КАК ПаспортныеДанныеФизЛиц | ПО КадровоеПеремещениеОрганизацийРаботникиОрганизации.ФизЛицо = ПаспортныеДанныеФизЛиц.ФизЛицо | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций | ПО КадровоеПеремещениеОрганизацийРаботникиОрганизации.ФизЛицо = СотрудникиОрганизаций.Физлицо | И КадровоеПеремещениеОрганизацийРаботникиОрганизации.Сотрудник.НомерДоговора = СотрудникиОрганизаций.НомерДоговора | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК АдресРегистрации | ПО КадровоеПеремещениеОрганизацийРаботникиОрганизации.ФизЛицо = АдресРегистрации.Объект | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация | ПО КадровоеПеремещениеОрганизацийРаботникиОрганизации.ФизЛицо = КонтактнаяИнформация.Объект |ГДЕ | КадровоеПеремещениеОрганизацийРаботникиОрганизации.Ссылка = &ТекущийДокумент | И КонтактнаяИнформация.Объект = &Объект | И КонтактнаяИнформация.Тип = &Тип | И КонтактнаяИнформация.Вид = &Вид"; Шапка = Запрос.Выполнить().Выбрать(); Шапка.Следующий(); ФИО = РазложитьФИО(Шапка.РаботникИН); ТабДокумент = Новый ТабличныйДокумент; ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_КадровоеПеремещениеОрганизацийРаботникиОрганизации_ДополнительноеСоглашение"; Макет = ПолучитьМакет("ДополнительноеСоглашение"); ОбластьМакета = Макет.ПолучитьОбласть("Общее"); ОбластьМакета.Параметры.РаботникИН = ФИО.Фамилия + " " + Лев(ФИО.Имя,1) + "." + Лев(ФИО.Отчество,1) + "."; ОбластьМакета.Параметры.Работник = Шапка.Сотрудник.Наименование; ОбластьМакета.Параметры.Серия = Шапка.Серия; ОбластьМакета.Параметры.Номер = Шапка.Номер; ОбластьМакета.Параметры.ДатаВыд = Шапка.ДатаВыд; ОбластьМакета.Параметры.КемВыдан = Шапка.КемВыдан; ОбластьМакета.Параметры.ИНН = Шапка.ИНН; ОбластьМакета.Параметры.СтрахНомер = Шапка.СтрахНомер; ОбластьМакета.Параметры.ДатаРож = Шапка.ДатаРож; ОбластьМакета.Параметры.ДатаДог = Шапка.ДатаДог; ОбластьМакета.Параметры.НомерДог = Шапка.НомерДог; ОбластьМакета.Параметры.Подразделение = Шапка.Подразделение; ОбластьМакета.Параметры.Должность = Шапка.Должность; ОбластьМакета.Параметры.Оклад = Шапка.Оклад; ОбластьМакета.Параметры.РабДата = ТекущаяДата(); ОбластьМакета.Параметры.Дата1 = Шапка.Дата1; ОбластьМакета.Параметры.Номер1 = Шапка.Номер1; ОбластьМакета.Параметры.Работодатель = Шапка.Работодатель; ОбластьМакета.Параметры.ДатаОт = Шапка.ДатаОт; ОбластьМакета.Параметры.Поле1 = Шапка.Поле1; ОбластьМакета.Параметры.Поле2 = Шапка.Поле2; ТабДокумент.Вывести(ОбластьМакета); Возврат ТабДокумент; КонецФункции |
|||
15
Molinor
01.10.13
✎
12:02
|
Так задай значение параметра "Объект", заодно ещё "Вид" и "Тип"
|
|||
16
Molinor
01.10.13
✎
12:04
|
А если быть точнее, то параметр "Объект" тебе вообще не нужен, ты же по нему соединение делаешь. Надо только указать вид и тип контактной информации.
Но учти, что если записи с таким видом и типом контактной информации не будет, тогда в итоге вообще ничего не получишь. Лучше в соединение перенести параметры. |
|||
17
JaZDik
01.10.13
✎
12:12
|
(16) Извение за глупый наверное вопрос как задать параметр
|
|||
18
Molinor
01.10.13
✎
12:14
|
Точно так же, как это уже сделано:
Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект.Ссылка); |
|||
19
JaZDik
01.10.13
✎
12:20
|
(18) Извените наверное за мою тупость. тип должен быть адрес, вид Адрес проживания физ. лица. Как их правильно объявить?
|
|||
20
Molinor
01.10.13
✎
12:22
|
Смотри что это за объекты в базе так и объявляй.
Перечисления.<НазваниеПеречисления>.<Значение> Справочники.<НазваниеСправочника>.<Значение> (если предопределённое значение) В данном случае будет примерно так. |
|||
21
JaZDik
01.10.13
✎
12:45
|
(20) не получается нефига... если не сложно у меня там по ссылочке... лежит эта внешка можешь поглядеть и показать как правельно сделать... запутался совсем
|
|||
22
Molinor
01.10.13
✎
12:47
|
Смотри (3)
Говори что конкретно не получается, а лучше почитай книжки умные. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |