|   |   | 
| 
 | 1с ЗУП 3.1 ДоходВНатуральнойФорме программно | ☑ | ||
|---|---|---|---|---|
| 0
    
        illiona naïve 02.02.24✎ 05:15 | 
        Добрый день. Создаю документ пустой в базе, затем обработка его заполняет, всё на форме вижу. Но при нажатии на кнопку пересчитать, у сотрудников исчезает Территория, если еще раз пересчитать она встает обратно. Не могу понять с чем это связано. При ручном вводе документа, Терриория не исчезает. Подскажите может кто сталкивался.     | |||
| 1
    
        SleepyHead гуру 02.02.24✎ 08:00 | 
        (0) В табличной части "Начисления" нет колонки "Территория". Возможно, определяется по подразделению или месту получения дохода.
 У вас обе эти колонки заполняются? | |||
| 2
    
        illiona naïve 02.02.24✎ 08:18 | 
        да, эти колонки заполняются в табличной части РаспределениеПоТерриториямУсловиямТруда, и при открытии документа территория заполнена.     | |||
| 3
    
        SleepyHead гуру 02.02.24✎ 08:20 | 
        (2) Спрашивал про табличную часть "Начисления"     | |||
| 4
    
        dchumak 02.02.24✎ 08:21 | 
        (0) Скорее всего программно что-то недозаполнено (реквизит). Создайте 2 документа, один вручную, второй программно и сравните реквизиты в шапке и табличных частях (например, через консоль запросов).     | |||
| 5
    
        Гена гуру 02.02.24✎ 08:25 | 
        (2) Программно куда сумму вносите? Только в свою ячейку или параллельно и в ячейку территории?
 Для данного сотрудника точно уже есть территория или пусто? | |||
| 6
    
        SleepyHead гуру 02.02.24✎ 08:27 | 
        (5) При пересчете табличная часть "Распределение по территориям" пересчитывается. Как и все прочие, кроме "Начислений". А что в начислениях - автор молчит, как партизан.     | |||
| 7
    
        Гена гуру 02.02.24✎ 08:29 | 
        (6) Уверены? По памяти вроде как не пересчитывается. Пересчитывается только по команде Отменить исправления сотрудника.     | |||
| 8
    
        Gucci76 02.02.24✎ 09:15 | 
        (0) Вы запускали процедуру программно:
 Процедура ПерезаполнитьДанныеФормыНаСервере(Знач Сотрудники, СохранятьИсправления = Истина) Экспорт | |||
| 9
    
        illiona naïve 02.02.24✎ 09:21 | 
        Начисления программно тоже табличная часть заполняется
 Заполнение территории: НСт=ОбъектДляЗаполнения.РаспределениеПоТерриториямУсловиямТруда.Добавить(); НСт.Территория=Стр.Территория; НСт.ИдентификаторСтроки=Идент; НСт.Результат=Стр.Результат; НСт.ДоляРаспределения=1; | |||
| 10
    
        Гена гуру 02.02.24✎ 09:31 | 
        (8) А может наоборот надо, = Ложь, раз идёт сумма в распределение по территориям? Нет?     | |||
| 11
    
        Gucci76 02.02.24✎ 09:37 | 
        (10) Я привел ссылку на саму процедуру в модуле формы документа ДоходыВнатуральнойФорме.
 В ней параметры это массив сотрудников, которые надо пересчитать и флаг сохранения ручных исправлений (он без указания этого параметра будет Истина исправления фиксируются специальным реквизитом - если его предварительно не указать, то думаю все равно 1С пересчитает | |||
| 12
    
        Гена гуру 02.02.24✎ 09:42 | 
        (11) Да это понятно. Я просто подумал, а может наоборот - надо отменить ручные исправления. 
 Короче, практика - критерий истины. Подождём результатов экспериментов автора. | |||
| 13
    
        illiona naïve 02.02.24✎ 09:43 | 
        В ручном добавлении доля 1     | |||
| 14
    
        illiona naïve 02.02.24✎ 09:44 | 
        (11) Не поняла, что надо поставить?     | |||
| 15
    
        SleepyHead гуру 02.02.24✎ 09:48 | 
        (7) Не уверен, но по логике должна именно пересчитываться. 
 Когда вы вносите данные в документ вручную, вы заполняете только табличную часть "Начисления". Территория есть только в табличной части "Распределение по территориям", и она заполняется программно, по данным подразделения и места получения дохода. | |||
| 16
    
        Gucci76 02.02.24✎ 11:19 | 
        (14) Вы все руками заполняете? Или потом запускаете типовой функционал расчета/перерасчета?
 Рекомендую второй вариант, для этого воспользуйтесь процедурой из (8) | |||
| 17
    
        illiona naïve 02.02.24✎ 11:23 | 
        да все запускается вручную из файла     | |||
| 18
    
        Gucci76 02.02.24✎ 14:15 | 
        (17) Так там много различных табличных частей.
 По идее надо заполнить таблицы Начисления и Показатели (ФизическиеЛица наверно сами заполнятся, но если не трудно...), а потом попросить 1С пересчитать с помощью процедуры из (8) | |||
| 19
    
        illiona naïve 04.02.24✎ 17:31 | 
        У меня получается есть ссылка на документ, а как запустить пересчет?     | |||
| 20
    
        Gucci76 04.02.24✎ 18:50 | 
        (19) Получить форму документа. И к ней через точку обратиться к процедуре (предварительно надо подготовить массив сотрудников)     | |||
| 21
    
        Gucci76 04.02.24✎ 18:51 | 
        ПараметрыФормы = Новый Структура("Ключ",Объект.ДокументСсылка);
 УпрФорма = ПолучитьФорму("Документ.ДоходВНатуральнойФорме.ФормаОбъекта",ПараметрыФормы,ЭтаФорма); УпрФорма.ПерезаполнитьДанныеФормыНаСервере(МассивСотрудников,Истина); | |||
| 22
    
        Gucci76 04.02.24✎ 18:54 | 
        Почти во всех документах есть эта процедура (разовое, премия.....).
 Вот в назначении планового начисления нет - и ни одна экспортная процедура не дает пересчитать программное заполнение документа (((((( Может кто знает как посчитать размер доплаты в этом документе? | |||
| 23
    
        illiona naïve 13.02.24✎ 09:52 | 
        Еще вопрос. А табличная часть Показатели, как должна быть заполнена в случае, если начисление фиксированная сумма(не по формуле)?     | |||
| 24
    
        Gucci76 13.02.24✎ 11:21 | 
        (23) Никак.     | |||
| 25
    
        SleepyHead гуру 13.02.24✎ 11:43 | 
        (23) 
 Как посмотреть, как должен быть заполнен документ: 1. Создайте документ вручную, проведите 2. В конфигураторе зайдите в модуль формы, поставьте точку останова в начало ПриСозданииНаСервере и откройте документ 3. Вы окажетесь в отладчике 4. Смотрите, что в документе, через Объект.Ссылка в табло или через вычисление выражения по Shfr+F9 | |||
| 26
    
        illiona naïve 14.02.24✎ 06:30 | 
        C пересчетом решилось. Теперь другая проблема. Под расчетчиком в обработке: 
 прав не хватает именно в момент РасчетЗарплатыРасширенный.СоздатьМенеджерРасчета() ПривилигированныйРежим не срабатывает. А если пересчитать сотрудников из документа, то проходит это место). Может кто-то сталкивался с такой проблемой? | |||
| 27
    
        SleepyHead гуру 14.02.24✎ 06:58 | 
        (26) В обработке привелигированный режим не включается.     | |||
| 28
    
        Гена гуру 14.02.24✎ 07:06 | 
        Придёт Волшебник и покажет вам обоим кузькину мать... Будете потом кричать, что вас насильно привели и привили...     | |||
| 29
    
        SleepyHead гуру 14.02.24✎ 07:42 | 
        (28) Ну да, я все время в этом слове путаюсь. Хотя в школе учительница мне говорила, что у меня врождённая грамотность.     | |||
| 30
    
        illiona naïve 14.02.24✎ 08:20 | 
        привилигированный режим стоит и в модуле где создается менеджер расчета. Подскажите как в обработке это сделать)     | |||
| 31
    
        Страждущий 14.02.24✎ 11:09 | 
        Нужно установить в обработке безопасный режим в ложь     | |||
| 32
    
        SleepyHead гуру 14.02.24✎ 11:28 | 
        (31) Не всегда это помогает. 
 Может помочь, если дать обработке права на такой режим, прописав их в сведениях о внешней обработке, и подключив обработку в подсистему допобработок. Но у меня пока такое не получилось, программист я еще так себе. В любом случае, в отладке автор все равно будет использовать внешнюю обработку, а в ней такой режим не поставишь. Автор, копай сторону внешнего модуля РаботаВБезопасномРежиме.РазрешениеНаИспользованиеПривилегированногоРежима ВерсияБСП=СтандартныеПодсистемыСервер.ВерсияБиблиотеки(); ПараметрыРегистрации=ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке(ВерсияБСП); // ... тут подключаем вид обработки и так далее Разрешение = РаботаВБезопасномРежиме.РазрешениеНаИспользованиеПривилегированногоРежима(); ПараметрыРегистрации.Разрешения.Добавить(Разрешение); | |||
| 33
    
        illiona naïve 16.02.24✎ 04:53 | 
        При добавлении обработку в программу, через дополнительные обработки всё получилось     | |||
| 34
    
        Гена гуру 16.02.24✎ 07:56 | 
        (33) Можно поздравить, уже перешли окончательно на ЗУП?
 Натуралка в теме - это суточные сверх нормы? | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |