Форум программистов, компьютерный форум, киберфорум
Наши страницы
1С: Собственные программы
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
19yekkow92
0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 10
1

УПП. Перенос данных из регистра сведений "Работники организации" в "Работники"

24.03.2016, 14:19. Просмотров 1360. Ответов 9
Метки нет (Все метки)

Добрый день, подскажите пожалуйста, как можно осуществить перенос данных с регл. Регистра сведений Работники организации в упр. Работники.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.03.2016, 14:19
Ответы с готовыми решениями:

Получить оклад из регистра сведений "Плановые начисления сотрудников организации"
Здравствуйте. Суть такова. В шаблон Word для ВПФ мне надо подставить два значения. ВПФ работает...

1С 8.3 Розница 2.1.4.9 "Текущая цена розницы" и "Остаток" в форме элемента "Номенклатура"
Есть ли готовое решение, можно через внешнюю форму нужно контроль "Текущая цена розницы" и...

Реализация механизма "СТОП Отгрузки" через регистр сведений
Есть документ РеализацияТоваровУслуг в котором указываются контрагенты, Создал Регистр Накопления...

Запрос к регистру сведений "Кадровая история сотрудников"
Добрый день! Помогите разобраться с регистром сведений "Кадровая история сотрудников". Цель -...

В регистре сведений появляются "левые" записи
Есть РС хранящий некую информацию... исправно хранил ее в течении уже полутора лет, но на днях...

9
GreenkA
Модератор
Эксперт 1С
2990 / 1911 / 520
Регистрация: 25.06.2009
Сообщений: 6,784
24.03.2016, 15:25 2
19yekkow92, напишите текст без сокращений, так ничего не понятно. Какая у вас конфигурация?
0
19yekkow92
0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 10
24.03.2016, 19:47  [ТС] 3
Упп 8.3 обычное приложение. Необходимо перенести данные из регистра сведений "Работники организации " в "Работники". Как можно это реализовать, при помощи обработки? Какую процедуру нужно прописать на нажатие кнопки?
0
GreenkA
Модератор
Эксперт 1С
2990 / 1911 / 520
Регистрация: 25.06.2009
Сообщений: 6,784
24.03.2016, 20:50 4
19yekkow92, оба регистра подчинены регистраторам, поэтому, если нужно заполнить регистр сведений Работники, нужно создать один из документов-регистраторов, например, "Корректировка записей регистров".
Вам нужны все записи из регистра "Работники организации" или только актуальные?

К чему вопрос: оба регистра периодические, Период = Дате документа-регистратора. Если вам нужны актуальные записи, то можно выставить условную дату документа (например, начало этого года), тогда достаточно будет одного документа. Если вам нужные все записи - то на каждый набор дат нужно будет создавать новый документ.

И еще: эти регистры имеют различную структуру. Если с полями Сотрудник и ФизЛицо проблем нет, т.к. в Сотрудниках есть реквизит ФизЛицо, то вот справочники "Подразделения" и "Подразделения организаций" никак не связаны.
1
19yekkow92
0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 10
25.03.2016, 10:44  [ТС] 5
А если учесть то, что допустим справочник с подразделениями заполнен и по регламентированному учету и по управленческому?
А примерно структура кода какая должна быть?

И да... нужны все записи с РаботниковОрганизации

Добавлено через 5 часов 43 минуты
Никто не сталкивался с таким вопросом? Или никто не может подсказать?
0
GreenkA
Модератор
Эксперт 1С
2990 / 1911 / 520
Регистрация: 25.06.2009
Сообщений: 6,784
25.03.2016, 18:51 6
Цитата Сообщение от 19yekkow92 Посмотреть сообщение
не сталкивался с таким вопросом
Не сталкивались, но не проблема...
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
Процедура КнопкаВыполнитьНажатие(Кнопка)
    ДокументКорректировка = Документы.КорректировкаЗаписейРегистров.СоздатьДокумент();
    ДокументКорректировка.Дата  = ДатаВыбора; //реквизит обработки
    
    РегистрРаботники = ДокументКорректировка.ТаблицаРегистровСведений.Добавить();
    РегистрРаботники.Имя = "Работники";
    РегистрРаботники.Представление = "Кадровая история сотрудников (по компании)";
 
    ДокументКорректировка.Записать();
    ДокументКорректировка.Движения.Работники.Записывать = Истина;
            
    Запрос = Новый Запрос("ВЫБРАТЬ
                          | РаботникиОрганизаций.Сотрудник.Физлицо КАК Физлицо,
                          | РаботникиОрганизаций.Период КАК Период,
                          | РаботникиОрганизаций.ПодразделениеОрганизации.Наименование КАК Подразделение,
                          | РаботникиОрганизаций.Должность,
                          | РаботникиОрганизаций.ГрафикРаботы,
                          | РаботникиОрганизаций.ЗанимаемыхСтавокЗавершения КАК ЗанимаемыхСтавок,
                          | РаботникиОрганизаций.ПричинаИзмененияСостояния
                          |ИЗ
                          | РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизаций
                          |
                          |УПОРЯДОЧИТЬ ПО
                          | Период");
    Выборка = Запрос.Выполнить().Выбрать();
    Пока Выборка.Следующий() Цикл
        Движение = ДокументКорректировка.Движения.Работники.Добавить();
        ЗаполнитьЗначенияСвойств(Движение,Выборка);
        
        //ищем такое же подразделение по наименованию, если нет - создаем
        Подразделение = Справочники.Подразделения.НайтиПоНаименованию(Выборка.Подразделение);
        Если Подразделение.Пустая() Тогда
            ПодразделениеНов =  Справочники.Подразделения.СоздатьЭлемент();
            ПодразделениеНов.Наименование = Выборка.Подразделение;
            ПодразделениеНов.Записать();
            Подразделение = ПодразделениеНов.Ссылка;                
        КонецЕсли;
        Движение.Подразделение = Подразделение;
        Движение.Период = Выборка.Период;
        Движение.Активность = Истина;
    КонецЦикла; 
    ДокументКорректировка.Движения.Работники.Записать();
КонецПроцедуры
В зависимости от версии УПП структура регистров может отличаться, доработайте при необходимости.
Перед запуском сделайте обязательно бэкап базы(выгрузку). Выполнение обработки в зависимости от количества записей может занимать длительное время.
После выполнения создастся документ "Корректировка записей регистров"(дата в обработке проставляется из реквизита формы). В нем можно будет изменять(удалять/добавлять) записи регистра сведений "Работники".
1
19yekkow92
0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 10
28.03.2016, 12:53  [ТС] 7
GreenkO, а возможно ли сделать перенос с другим документом? Не с клрректировкой.
0
GreenkA
Модератор
Эксперт 1С
2990 / 1911 / 520
Регистрация: 25.06.2009
Сообщений: 6,784
28.03.2016, 12:56 8
19yekkow92, каким? Смотрите всех регистраторов регистра Работники.
Просто "корректировкой записей регистра" - возможно создание одного документа.
Остальные документы делают движения по дате документа - т.е. документов будет создано очень много.
1
19yekkow92
0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 10
28.03.2016, 14:13  [ТС] 9
Тогда вопрос в другом, а даст ли обработка записать все действия? Разве клрректировкой принять сотрудника можно? И еще. В коде, предложенном Вами, выходит ошибка - "Запись с такими ключевыми полями уже существует". В дано регистре есть 2 позиции, и я так понимаю, что он жалуется, на этих двух?

Добавлено через 14 минут
GreenkO, нет, суть не в этом, если сотрудников вообще не будет в регистре по упр учету, все-равно ошибка та же

Добавлено через 40 минут
Как выяснилось, с корректировкой не подходит.
По приему на работу надо сделать, чтоб в записи была последняя должность, без кадрового перемещения.
Т.е. если у сотрудника за все время было 3 кадровых перемещения, то брать последнее, а в приеме на работу указать дату приема со справочника сотрудники.
0
GreenkA
Модератор
Эксперт 1С
2990 / 1911 / 520
Регистрация: 25.06.2009
Сообщений: 6,784
28.03.2016, 14:27 10
19yekkow92, я у вас выше спрашивала про все записи регистра "Работники организаций". Выложила вам полный код по тому описанию, что вы дали.
Если надо изменить/переделать - переделывайте под ваши нужды.
0
28.03.2016, 14:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.03.2016, 14:27

На форму списка товаров добавить "ТабличноеПоле" с типом значений "ДеревоЗначений"
1С.8.0 На форму списка товаров добавить "ТабличноеПоле" с типом значений "ДеревоЗначений". При...

Автоматическое заполнение поля "Комментарий" документа "заказ покупателя"
Всем здравствуйте! Помогите, пожалуйста, решить такую задачку: С сайта (на Битриксе) выгружаются...

Как создать колонку "Цена" и "Количество" в справочнике номенклатура
Подскажите как создать колонку "Цена" и "Количество" в справочнике номенклатура?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru