В КадроваяИсторияСотрудниковИнтервальный не то, что ожидается, что я делаю не так?

1. babLucy 20.09.21 22:52 Сейчас в теме
Должности в регистрах КадроваяИсторияСотрудникови КадроваяИсторияСотрудниковИнтервальный разные - почему? После того, как изменяю должность, записываю документ.

В документе Кадровый перевод тоже проблема - должность другая, но не та, что в регистре, а третий вариант. Меняю на "Ббб". В ИзменениеШтатного расписания правильно встает. В кадровом переводе списком правильно в 1 случае из примерно 12 встает правильно.

		РезультатЗапроса = ПолучитьДанныеДляИзменения();
		Выборка = РезультатЗапроса.Выбрать();
		
		Если Выборка.Следующий() Тогда
			ИзменениеШР = Выборка.ИзменениеШР.ПолучитьОбъект();// Документ.ИзменениеШтатногоРасписания
			НайденнаяПозиция = ИзменениеШР.Позиции.Найти(Объект.ПозицияТекущаяКП, "Позиция");
			НайденнаяПозиция.Должность = Объект.Должность;
			Если ЗначениеЗаполнено(Объект.Подразделение) Тогда
				НайденнаяПозиция.Подразделение = Объект.Подразделение;
			КонецЕсли; 
			
			ИзменениеШР.Записать();
		КонецЕсли;
		
		ЭлементШР = Объект.ПозицияТекущаяКП.ПолучитьОбъект();
		ЭлементШР.Должность = Объект.Должность;
		Если ЗначениеЗаполнено(Объект.Подразделение) Тогда
			ЭлементШР.Подразделение = Объект.Подразделение;
		КонецЕсли; 
		ЭлементШР.Наименование = Строка(ЭлементШР.Должность) + " /" + Строка(ЭлементШР.Подразделение) + "/";
		ЭлементШР.Записать();
		
		КадровыйПеревод = Объект.КадровыйПеревод.ПолучитьОбъект();
		
		Если ТипЗнч(Объект.КадровыйПеревод) = Тип("ДокументСсылка.КадровыйПереводСписком") Тогда
			НайденнаяСтрока = КадровыйПеревод.Сотрудники.Найти(Объект.Сотрудник, "Сотрудник");
			Если НайденнаяСтрока <> Неопределено Тогда
				НайденнаяСтрока.Должность = Объект.Должность;
				КадровыйПеревод.Записать();
			КонецЕсли;
			
		КонецЕсли;
		
		Сообщить("Должность = " + Объект.Должность);
		Объект.ПозицияТекущаяКП = Справочники.Должности.ПустаяСсылка();
		
Показать
Прикрепленные файлы:
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. nomad_irk 72 21.09.21 06:20 Сейчас в теме
(1)Отменить проведение "кадровый перевод" и провести его пробовали?
3. Roman_Go 2 21.09.21 07:56 Сейчас в теме
а со штатным расписанием точно все нормально? По картинке такое ощущение, что несоответствие позиции штатного расписания идет должности.

в табличной части два поля "должность" - справочник должность, "должность по штатному расписанию" - справочник штатное расписание. По идее в поле должность должна быть должность из "должность по штатному расписанию", а у Вас какая-то другая каким-то образом затесалась.

Т.е. на глаз проблема не в регистрах, они как могли так и заполнились, а в том, что в табличной части документа, и каким образом оно таким встало.

только у меня зуп корп и ведется история штатного расписания
Прикрепленные файлы:
5. babLucy 21.09.21 08:41 Сейчас в теме
(3)
только у меня зуп корп и ведется история штатного расписания

Все то же самое

Задача: задним числом нужно изменить должность сотрудника.
Меняем и позицию штатного расписания и кадровые переводы сотрудника.
В позиции ШР должность меняю, и проблем вроде нет.
А в кадровом переводе списком остается старая должность, хотя изменяю ее
		Если ТипЗнч(Объект.КадровыйПеревод) = Тип("ДокументСсылка.КадровыйПереводСписком") Тогда
			НайденнаяСтрока = КадровыйПеревод.Сотрудники.Найти(Объект.Сотрудник, "Сотрудник");
			Если НайденнаяСтрока <> Неопределено Тогда
				НайденнаяСтрока.Должность = Объект.Должность;
				КадровыйПеревод.Записать();
			КонецЕсли;
			
		КонецЕсли;
Показать
6. Roman_Go 2 21.09.21 08:50 Сейчас в теме
(5) теперь понятно, почему все вкривь вкось. Плохо меняете, а еще возможно последовательность документов некорректная.

Я бы отменил проведение изменяемых документов, потом поменял, а потом в хронологии проводил. Но судя по скрину второму, должность то не поменяна.

А что документов много, что это программно надо делать? А электронная трудовая книжка как же? Ой чувствую вы там наворотите сейчас.
8. babLucy 21.09.21 09:40 Сейчас в теме
(6)
Ой чувствую вы там наворотите сейчас.

Все в здравом уме и твердой памяти, понимаем что творим
7. Roman_Go 2 21.09.21 09:02 Сейчас в теме
(5) а в документе случайно не несколько сотрудников по которым изменить надо должность? Если несколько, то Вы не во всех строчках поменяете должность.
4. babLucy 21.09.21 08:38 Сейчас в теме
(2) Пробовала, помогает, но требуется программно
9. nomad_irk 72 21.09.21 11:57 Сейчас в теме
(4)так сделай то же самое программно:

Если ТипЗнч(Объект.КадровыйПеревод) = Тип("ДокументСсылка.КадровыйПереводСписком") Тогда
        НайденнаяСтрока = КадровыйПеревод.Сотрудники.Найти(Объект.Сотрудник, "Сотрудник");
        Если НайденнаяСтрока <> Неопределено Тогда
              НайденнаяСтрока.Должность = Объект.Должность;
              КадровыйПеревод.Записать(РежимЗаписиДокумента.ОтменаПроведения);
              КадровыйПеревод.Записать(РежимЗаписиДокумента.Проведение);
       КонецЕсли;
.............
Показать
10. babLucy 22.09.21 08:36 Сейчас в теме
(9) Спасибо!
Еще одна проблема - на форме отображается не то что есть на самом деле (скрин). Как исправить?
Прикрепленные файлы:
11. nomad_irk 72 22.09.21 08:52 Сейчас в теме
(10)вы уверены, что в документе указана нужная позиция штатного расписания?
12. Roman_Go 2 22.09.21 12:01 Сейчас в теме
(10) это не должность, а позиция штатного расписания. Хоть и написано должность.
13. babLucy 22.09.21 13:08 Сейчас в теме
(12) это не меняет проблемы, на форме отображается не то, что есть на самом деле
14. Roman_Go 2 23.09.21 06:41 Сейчас в теме
(13) Вы ошибаетесь, проблема не в том, что отображается, а в том, как заполнен документ. У Вас он заполнен не тем, чем Вы думаете он заполнен.

И проблема не в том, что движения неправильные, а в том, что документ изначально некорректно заполнен.

возьмите обработку универсальную редактирования документов, откройте документ в ней и посмотрите, что там реально выбрано. Без особенностей отображения интерфейсом

например https://infostart.ru/public/14747/
15. babLucy 24.09.21 21:32 Сейчас в теме
(14) На скрине слева Кадровый перевод, справа провалились в должность. В данной ситуации очевидный глюк с отображением. Этот глюк воспроизводится и в Кадровом переводе списком, если изменить форму - вывести ДолжностьПоШтатномуРасписанию.Должность - если установить фильтр по Должность (ctrl+F ввести наименование которое видим) то выводится пустой список. А также запрос возвращает не то, что мы видим.
Смотрите скрин - в наименовании должности Новая2 (справа), а в документе (слева) отображается Новая1 (должность до изменения). Этот глюк пропадает после танцев с бубном - открыть/закрыть/лечь/отжаться).
16. Roman_Go 2 27.09.21 06:49 Сейчас в теме
(15) это глюк не с отображением, а с заполнением. А танцы с бубном скорее всего задевают механизм перезаполнения табличной части, в частности должности. И я так полагаю, глюк появляется после программной обработки документа и/или позиции штатного расписания.

т.е. если посмотреть изменение реквизитов (через историю изменения документов, типовая возможность зуп) то с глюком будет один состав, а без глюка другой состав и вы легко должны увидеть, что изменилось

ну и еще один момент, несоответствие должности в табличной части документа, должности в позиции штатного расписания.

Как говорит мой начальник расчетного отдела, "все смешалось, кони, люди"
17. babLucy 28.09.21 12:44 Сейчас в теме
(16)
я так полагаю, глюк появляется после программной обработки документа и/или позиции штатного расписания

как в воду смотрели

(16)
Как говорит мой начальник расчетного отдела, "все смешалось, кони, люди"

танцы с бубном пошагово:
1) Изменяем должность обработкой
2) Открываем сотрудника из формы обработки - должность до изменения
3) Проваливаемся в должность сотрудника - должность после изменения
То есть на форме сотрудника одно (п. 2), а на форме элемента справочника ШР другое (п. 3).
4) Открываем сотрудника из справочника Сотрудники - должность после изменения
5) Возвращаемся к пункту 1: открываем сотрудника из формы обработки - должность после изменения.
В общем с какой-то задержкой отображается, а данные корректные.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот