Для определения номера недели в конфигурациях 1С обычно используется стандартная функция НеделяГода().
Например 17 октября 2016 года:
НеделяГода() возвращает 43, а по обычному календарю это 42:
Судя по всему, 1С считает по американской системе. "По европейской норме (DIN 1355 / ISO 8601) первой неделей года считается неделя, содержащая 4 января данного года (http://vsegost.com/Catalog/62/6263.shtml). А в США первой неделей считается любая неделя, содержащая первое января, независимо от числа дней".
Чтобы 1С возвращала номер недели, совпадающий с "человеческими" календарями и ежедневниками, предлагается использовать следующую функцию:
Каждый расчетчик сталкивается с начислением планового аванса, но как правильно это оформить в ЗУП 2.5 знает не каждый.
Ниже небольшая инструкция по начислению планового аванса в ЗУП:
В ЗУПе разработаны два способа расчета аванса:
- Аванс фиксированной суммой;
- Аванс за первую половину месяца пропорционально отработанным
Настройки для расчета
Откройте Сервис - Параметры учета и установите настройки значений для Вашей организации:
Аванс фиксированной суммой
Необходимо в списке справочника «Сотрудники организаций» в поле «Аванс» указать сумму, которая будет являться фиксированным авансом для каждого из сотрудников.
После этого как вы заполните все фиксированные суммы по сотрудникам, чтобы выплатить аванс. Открываем документ «Зарплата к выплате».
«Расчет зарплаты - Касса и Банк - Зарплата к выплате организаций»
Создаем новый документ
Указываем в нем месяц начисления (аванс за какой месяц выплачивается), способ выплаты (через кассу или через банк). Самое главное поле это поле «Выплачивать». В нем надо обязательно выбрать вариант «Плановый аванс». После этого нажимаем кнопку «Заполнить» и табличная часть документа будет заполнена сотрудниками, по которым мы указали размер аванса в справочнике «Сотрудники организаций».
Проведем документ, далее за каждым сотрудником получившим аванс формируется задолженность перед организацией, т.е. они оказываются должны предприятию. Это происходит поскольку к моменту выплаты аванса, ещё не была начислена основная часть заработной платы документом «Начисление зарплаты». Это можно увидеть в отчете «Расчетная ведомость организации» и «Свод начисленной зарплаты».
Аванс за первую половину месяца пропорционально отработанным
Когда нужно выплатить аванс за половину месяца пропорционально отработанному времени то для этого в программе 1С Зарплата и Управление Персоналом есть специальный функционал - Документ «Начисление зарплаты» и конечно «Зарплата к выплате».
Открываем документ «Начисление зарплаты». В нем необходимо указать месяц начисления и в поле «Режим начисления» обязательно выбрать «Первая половина текущего месяца». После этого по кнопке «Заполнить» получить в табличной части перечень сотрудников с их начислениями
и по кнопке «Рассчитать - Полный расчет» - идет расчет аванса за первую половину месяца. При этом обратите внимание, что у сотрудников в качестве начислений присутствуют не только основные плановые начисления, но и все дополнительные плановые начисления положенные работникам.
НДФЛ
Проведение документа «Начисление зарплаты» с режимом начисления «Первая половина текущего месяца» на самом деле не делает никаких начислений, а лишь осуществляет расчет сумм аванса. Поэтому, когда мы в конце месяца будем пользоваться этим документом для расчета зарплаты, то он снова будет считать всех сотрудников с первого числа месяца, а не с середины.
После расчета аванса в документе «Начисление зарплаты» необходимо его провести и обратиться к документу «Зарплата к выплате». В нем указываем месяц начисления и в поле «выплачивать» выбираем «Аванс по расчету за первую половину месяца». Жмем кнопку «заполнить». В результате табличная часть будет заполнена сотрудниками, для которых рассчитан аванс за половину месяца за вычетом НДФЛ.
Как и в первом случае после проведения документа «Зарплата к выплате», сформируется задолженность сотрудника перед организацией.
Часто задаваемые Вопросы по начислению аванса:
Необходимо чтобы в аванс начислялось 40% от суммы месячного оклада, Как начислить?
В списке сотрудников или в регистре сведений Авансы сотрудникам организаций (меню Расчет зарплаты по организациям - Касса и банк - Авансы сотрудникам организаций) указываете сумму планового аванса 40 от зп вашего сотрудника.
Далее формируете документ "Зарплата к выплате" операция "плановый Аванс"
Как рассчитать НДФЛ с аванса?
Уточните, плз, что должно выплачиваться за первую половину месяца: собственно аванс или зарплата за 1 половину месяца?
1.Если аванс, но это НЕ НАЧИСЛЕНИЕ! Это-ВЫПЛАТА!
Сразу создаем документ Зарплата к выплате, заполняем его из фиксированной суммы аванса, заданной в регистре сведений Авансы сотрудникам.
НДФЛ НЕ ПЛАТИМ!
Да, неудобно фиксированной суммой.
Можно, да, заполнить эти фиксированные суммы какой-нибудь обработкой.
Или заполнять обработкой не регистр сведений Авансы сотрудникам, а сам документ Зарплата к выплате.
2.Если это зп за 1 половину месяца, то она, действительно, расчитывается док.Начисление зп за 1 половину месяца, берется и уплачивается НДФЛ и т.п. Но начисляем не аванс как таковой, а часть оклада, тарифа, надбавок за часть месяца.
Это должно быть прописано в официальных документах организации, а не "как удобно расчетчику"
И,-подчеркну.-аванс это НЕ начисление. Начисляются-оклад, тариф, надбавки.
Мы НЕ назначаем такое начисление-аванс.И формулу его создать стандарными средствами НЕ можем.
Подскажите пожалуйста, пытаюсь людям начислить аванс, выбрала "плановый аванс" 50% от з/п, проставила у каждого сотрудника. Затем делаю "выплата", выбираю "банк", так как хочу на карты перечислить, и тут у меня отображается только один сотрудник...в чем подвох? хотя если выбрать "через кассу" отображаются все..Лицевые счета по всем заполнены.
В программе вы можете "плановый аванс" задать как вид выбираемой операции в док-те "Зарплата к выплате" . Тогда в ведомость автоматически подставятся суммы, проставленные каждому сотруднику. Причем, те сотрудники, которым вы не назначали плановый аванс, в такую ведомость не попадут.
Далее, если способ выплаты вы выбираете "через кассу", то такой вариант ведомости предоставляет впоследствии лишь возможность "ввести на основании" РКО (кассовый документ). Так реализовано в Зарплате и Управлении Персоналом 8, ред. 2.5.
А если вы выбираете способ выплаты - "через банк" , то справа открывается поле для контрагента- банка, в который вы передаете ведомость на списание суммы с вашего р/счета на карточные зарплатные счета ваших сотрудников по Зарплатному проекту.
В таком случае можно провести перечисление по банку обычного планового аванса.
Но если у вас установлен упрощенный вариант учета взаиморасчетов с сотрудниками, то у вас не получится ни платежное поручение ввести (как документ), ни в выписке банка что-либо оформить в конфигурации.
Кроме того, есть ещё вариант для того, чтобы некий аванс попал в ведомость для перечисления с банковского счета (или по расходом кассе). Для этого нужно производить отдельный расчет (док-том Начисление з/пл) за первую половину месяца. Такой расчет должен учитывать фактические невыходы (табель учета раб.времени), то есть выплата не просто плановой суммой, а в меньшей сумме, если первая половина месяца отработана сотрудником не полностью.
Первым делом, после установки кластера 1С ранее нужно было создать рабочие процессы. Как оказалось, процессы кластера начали создаваться автоматически в зависимости от нагрузки базы.
Пробный запуск фоновых заданий основной базы заставило кластер 1С бесконечно перегружать rphost.exe и дополнительный rphost.exe никак не хотел создаваться. Покопавшись в настройках все стало понятно.
Максимальный объем памяти рабочих процессов - это объем памяти, который могут использовать рабочие процессы вместе. Нужно быть очень внимательными при установке параметра, измеряется в байтах. Если установить неверное значение (недостаточное для нормальной работы пользователей) пользователям будет выдана ошибка "Недостаточно свободной памяти на сервере 1С". Так же эту ошибку можно получить, когда на сервере 1С закончилась квота по памяти.
Безопасный расход памяти за один вызов - позволяет контролировать расход памяти при серверном вызове, измеряется в байтах. Если вызов использует больше памяти чем положено, этот вызов будет завершен в рамках кластера 1С без перезапуска рабочего процесса (rphost.exe). Соответственно "неудачник", который выполнил вызов сервера, утратит сеанс с базой 1С без влияния на работу других пользователей.
в одном ГБ - 1073741824 Байт, следовательно в 2 ГБ - 2147483648 Байта
Объем памяти рабочих процессов, до которого сервер считается производительным - при превышении этого параметра сервер в кластере 1С перестанет принимать новые соединения.
Количество ИБ на процесс - позволяет изолировать информационные базы по рабочим процессам. По умолчанию у текущего кластера 1С было установлено значение - "8", но на протяжении нескольких часов работы сервер себя очень нестабильно, сеансы пользователей зависали. После изоляции каждой информационной базы (значение - "1") проблемы пропали.
Количество соединений на процесс - по умолчанию значение "128". Так как у текущей базы очень большая нагрузка фоновыми заданиями (расчет логистики, анализ прайсов, анализ конкурентов и прочее) было принято решение уменьшить количество до "25".
Немного изменились настройки и самого кластера 1С:
Уровень отказоустойчивости - это количество рабочих серверов, которые могут одновременно выйти из строя, и это не приведет к аварийному завершению работы пользователей. Резервные сервисы запускаются автоматически в количестве, необходимом для обеспечения заданной отказоустойчивости. В реальном режиме времени выполняется репликация активного сервиса на резервные.
Режим распределения нагрузки - есть два варианта параметра: "Приоритет по производительности" - памяти сервера тратится больше и производительность выше, "Приоритет по памяти" - кластер 1С экономит память сервера.
Сервер 8.3 характеризуется переработанным заново внутренним кодом, хотя «снаружи» может показаться что это слега доработанный 8.2.
Сервер стал более «авто настраиваемым», часть параметров типа количества рабочих процессов теперь не создается вручную, а рассчитывается исходя из описаний требований задач по отказоустойчивости и надежности.
Это снижает вероятность неправильной настройки сервера и понижает требования к квалификации админов.
Получил развитие механизм балансировки нагрузки, который можно использовать либо для повышения производительности системы в целом, либо использовать новый режим «экономии памяти», который позволяет работает «с ограниченной памятью» в случаи если используемая конфигурация «любит отъедать память».
Стабильность работы при использовании больших объемов памяти определятся новыми параметрами рабочего сервера.
Особенно интересен параметр «безопасный расход памяти за один вызов». Для тех кто плохо представляет что это такое - лучше не тренируйтесь на «продуктивной» базе. Параметр «Максимальный объем памяти рабочих процессов» позволяет при «переполнении» не обваливать весь рабочий процесс, а только один сеанс «с неудачником». «Объем памяти рабочих процессов, до которого сервер считается производительным» позволяет заблокировать новые соединения как только будет преодолен этот порог памяти.
Рекомендую изолировать рабочие процессы по информационным базам, к примеру указать параметр «Количество ИБ на процесс = 1″. При нескольких высоконагруженных базах это позволит уменьшить взаимное влияние как по надежности, так и по производительности.
Отдельный вклад в стабильность системы вносит «расходование» лицензий/ключей. В 8.3 появилась возможность использования «менеджера программных лицензий» напоминая менеджер «аладина». Цель - возможность вынести ключ на отдельную машину.
Реализован он в виде еще одного «сервиса» в менеджера кластера. Вы можете использовать к примеру «свободный» ноутбук. Добавьте его в кластер 1с 8.3, создайте на нем отдельный менеджер с сервисом «сервис лицензирования». В ноутбук можно воткнуть аппаратных hasp-ключ, или активировать программные лицензии.
Наибольший интерес для программистов должен представлять «Требования назначения функциональности».
Требования назначенной функциональности 1с
Так на ноутбуке с ключом защиты чтобы не запускать пользователей на сервер кластера надо добавить «требования» для объекта требования «Клиентское соединение с ИБ» - «Не назначать», т.е. запретить рабочим процессам данного сервера обрабатывать клиентские соединения.
Еще больший интерес предоставляет возможность запускать «только фоновые задания» на рабочем сервере кластера без сеансов пользователей. Таким образом можно высоконагруженные задачи (код) вынести на отдельный машины. При чем можно одно фоновое задание «закрытия месяца» через «Значение дополнительного параметра» запускать на одном компьютере, а фоновое задание «Обновление полнотекстового индекса» на другом.Уточнение происходит через указание «Значение дополнительного параметра». Например если указать BackgroundJob.CommonModule в качестве значения, то можно ограничить работу рабочего сервера в кластере только фоновыми заданиями с любым содержимым. Значение BackgroundJob.CommonModule.<Имя модуля>.<Имя метода> - укажет конкретный код.
Кластер 1С 8.2
Сеансы позволяют выполнять балансировку загруженности и отказоустойчивости в управляемом приложении.
Менеджер кластера теперь стал сложнее. Часть функций теперь можно выделить в отдельный процесс и даже разместить на другом рабочем сервере кластера. Это позволяет балансировать загруженность сервера.
Отказоустойчивость сервера 8.2 достигается за счет:
Хранение информации о сеансе работы пользователя.
Пользователь не привязан больше к рабочему процессу.
Резервирование рабочих процессов в кластере.
Должно быть несколько рабочих процессов, в том числе резервируемые
Резервирование кластеров.
Указывается запасной кластер, при подключении - перечисляются в строке соединения
Это позволяет обеспечить непрерывность работы!
При разрыве физического соединения клиента с кластером (уборщица выдернула кабель, отключилось питание сетевого оборудования, неполадки у провайдера) не приходится заново подключаться к информационной базе и начинать всю работу сначала. После восстановления физического соединения пользователь может продолжить работу с того места, на котором она была прервана.
Если требуется техническое обслуживание компьютеров кластера, их можно выключать прямо во время работы, не останавливая работу пользователей с информационной базой.
При выходе из строя любого сервера кластера работа пользователей не остановится она будет автоматически переведена на резервный кластер и/или на резервные рабочие процессы. Для пользователей такой переход будет незаметным.
Если один из рабочих процессов кластера завершится аварийно, подключенные к нему пользователи будут автоматически переведены на другие или резервные рабочие процессы. Такой переход также будет незаметен для пользователей.
Для эффективной борьбы с текучестью кадров необходимо постоянно мониторить ее коэффициент и исследовать обстановку в компании. На современном рынке существуют автоматизированные системы для кадрового учета, содержащие модули планирования работы персонала, мониторинга эффективности работы кадровой службы и состояния кадров в организации. Одной из популярных и обладающих необходимым функционалом информационных HRM-систем является «1С:Зарплата и управление персоналом 8». Система содержит отчет «Коэффициент текучести кадров», который позволяет контролировать текущий коэффициент текучести кадров как по всей организации, так и в конкретном отдельно взятом подразделении.
Данный показатель представляет собой следующее отношение, взятое за определенный период: (количество уволенных сотрудников/среднесписочная численность сотрудников) * 100 %.
За указанный в отчете период рассчитывается коэффициент текучести кадров по данным управленческого кадрового учета.
Коэффициент текучести кадров представляет собой отношение, выраженное в процентах, количества уволенных сотрудников за период к средней численности сотрудников с учетом ставок за тот же период.
Отчет предоставляет возможность рассчитать коэффициент текучести кадров в следующих разрезах:
- Строка кадрового плана
- Подразделения предприятия
- Должности предприятия
Для анализа и сравнения расчетных данных предусмотрена возможность отбора строк отчета. Присутствует возможность выбрать строки в следующих разрезах:
- Подразделения предприятия
- Должности предприятия
Схема расчета коэффициента текучести кадров
Коэффициент текучести кадров рассчитывается по следующей схеме:
1. За указанный в отчете период (как правило, год) по каждому подразделению и должности рассчитывается средняя численность сотрудников за месяц с учетом ставок сотрудников: СУММА (Ставка * количество отработанных календарных дней) / Количество календарных дней в месяце
2. Рассчитывается средняя арифметическая численности за месяцы по подразделению и должности за период.
3. Рассчитывается коэффициент текучести кадров.
3.1. За указанный в отчете период по каждому подразделению и должности рассчитывается количество высвобождаемых ставок.
3.2. Коэффициент текучести определяется по формуле: Количество высвобожденных ставок * 100 % / Средняя численность сотрудников
Рассчитывается как Оплата по среднему, там есть вид расчета "Оплата дополнительных выходных дней по уходу за детьми - инвалидами". Документ заполняется и рассчитывается как обычно.
Для кадровиков кроме ввода "Неявки и болезни в организации" со статусом:
1) Уход за больным ребенком
2) Дополнительные выходные дни (оплачиваемые)
больше вроде мало что подходит. Но отдельно упоминания об уходе за детьми-инвалидами нет.
Ставя очередное обновление Бухгалтерии получил ошибку "Я работаю только на 8.3.4", ну вот... пришло время поставить 8.3.4. и так:
Процесс скачивания и установки новой платформы я описывать не буду, там все просто.
Служба Агент Сервера 1С
По умолчанию он ставиться на порт 1540, а там у меня крутится 8.2, поэтому меняем в ветке рееста
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.3 Server Agent Параметр ImagePath
меняем номера портов, добавляя смещение: "C:\Program Files\1cv8\8.3.4.365\bin\ragent.exe" -srvc -agent -regport 1741 -port 1740 -range 1660:1691 -d "C:\Program Files\1cv8\srvinfo"
Запускаем Агента и Открываем консоль Администрирования серверов 1С и создаем кластер 8.3
Указал имя сервера и настроил на порт 1740 (на 1540 работает 8.2)
Создаем кластер + чуток оптимизировал( У меня всего небольшой ОДИН сервер, поэтому - указываю Интервал перезапуска рабочих процессов и объем памяти. т.к у меня один сервер - уровень отказоустойчивости - 0)
Теперь подробнее:
1. Интервал перезапуска: 86400 сек (24 часа). Момент перезапуска не регламентируется, видимо с момента установки параметров, либо запуска сервера приложений.
2. Также можно указать допустимый объем памяти: 3000000 Кб (3 Гб) - Для сервера с 4 ГБ оперативы, Если ее меньше, то не заполняйте этот параметр!.
3. Интервал превышения допустимого объема памяти — это непрерывный интервал времени превышения допустимого объема памяти, после которого сервер перезапустит процесс. Если указано 0 сек — будет ждать вечно.
4. Количество Рабочих процессов расчитывается автоматически на основании Ваших настроек
5. Уровень отказоустойчивости можно задавать уровень отказоустойчивости кластера как количество рабочих серверов, которые могут одновременно выйти из строя, и это не приведет к аварийному завершению работы пользователей. Резервные сервисы запускаются автоматически в количестве, необходимом для обеспечения заданной отказоустойчивости; в реальном режиме времени выполняется репликация активного сервиса на резервные.
6. Режим распределения нагрузки, который можно использовать либо для повышения производительности системы вцелом, либо использовать новый режим «экономии памяти», который позволяет работает «с ограниченной памятью» в случаи если используемая конфигурация «любит отъедать память».
Рабочий сервер
Сервер у меня простенький, 2 Gb оперативы всего и на нем будет всего 2 базы, поэтому настрою его так:
параметр Количество ИБ на процесс ставлю равным 1, т.е. хочу чтобы для каждой ИБ запускался свой процесс - это позволит уменьшить взаимное влияние как по надежности, так и по производительности. Вы же настраивате под характеристики своего сервера!
Информационная база
Добавляю ИБ:
В стартере пописываю базу:
Требования назначения функциональности
Я у себя это не настраиваю но думаю надо сказать об этом:
Управление кластером заключается в том, что администратор определяет состав компьютеров (рабочих серверов), на которых размещается кластер. Кроме этого (при необходимости) он может определить "требования" к ним: какие сервисы и соединения с информационными базами должны работать на каждом из рабочих серверов. Менеджеры кластера и рабочие процессы запускаются автоматически, исходя из назначенных "требований". "Требования" к рабочим серверам могут быть заданы интерактивно, из консоли администрирования кластера, или программно, из встроенного языка.
Так на ноутбуке с ключом защиты чтобы не запускать пользователей на сервер кластера надо добавить «требования» для объекта требования «Клиентское соединение с ИБ» — «Не назначать», т.е. запретить рабочим процессам данного сервера обрабатывать клиентские соединения. Еще больший интерес предоставляет возможность запускать «только фоновые задания» на рабочем сервере кластера без сеансов пользователей. Таким образом можно высоконагруженные задачи (код) вынести на отдельный машины. При чем можно одно фоновое задание «закрытия месяца» через «Значение дополнительного параметра» запускать на одном компьютере, а фоновое задание «Обновление полнотекстового индекса» на другом. Уточнение происходит через указание "Значение дополнительного параметра". Например если указать BackgroundJob.CommonModule в качестве значения, то можно ограничить работу рабочего сервера в кластере только фоновыми заданиями с любым содержимым. Значение BackgroundJob.CommonModule..- укажет конкретный код.
Профили безопасности
Профили безопасности служат для того, чтобы запретить прикладному решению выполнять действия, которые могут быть потенциально опасны для функционирования кластера серверов.
Администратор кластера может назначить любой информационной базе один из существующих в кластере профилей безопасности. И тогда потенциально опасная функциональность прикладного решения будет ограничена в тех пределах, которые описаны в этом профиле.
Стандартно, после создания, профиль безопасности запрещает выполнение всех потенциально опасных действий:
-обращение к файловой системе сервера;
-запуск COM-объектов;
-использование внешних компонентов 1С:Предприятия;
-запуск внешних обработок и отчётов;
-запуск приложений, установленных на сервере;
-обращение к ресурсам Интернета.
Таким образом защититься от нежелательных действий незнакомого прикладного решения очень просто: нужно создать пустой профиль безопасности и назначить его информационной базе. Далее, если есть необходимость, можно расширять этот профиль, описывая в нём действия, которые разрешается выполнять прикладному решению.
Расположение служебных файлов менеджера кластера в 1С Предприятии 8.3
Если при установке системы! «1С:Предприятие» был выбран вариант запуска сервера «1С:Предприятия» как сервиса, то первый запуск агента сервера будет выполнен еще в процессе установки системы. При этом сервис будет запущен от имени пользователя, выбранного в диалоге установки системы, но служебные файлы кластера серверов будут расположены в каталоге <каталог установки системы 1С:Предприятие>\srvinfo (в параметрах сервиса будет в явном виде указан ключ запуска -d).
Если при установке системы «1С:Предприятие» был выбран вариант запуска сервера как приложения, то запуск сервера в процессе установки системы не выполняется; агента сервера необходимо запустить самостоятельно, после того как установка системы будет закончена. При этом если ключ запуска -d указан не будет, служебные файлы кластера серверов будут расположены в каталоге по умолчанию: %USERPROFILE%\LocalSettings\ApplicationData\lC\lCv8 (%LOCALAPPDATA%\lC\lCv8 для ОС WindowsVista и старше).
ВНИМАНИЕ! Если однажды на данном центральном сервере уже был создан кластер, то при смене варианта запуска агента сервера (сервис, приложение) или при смене пользователя, от имени которого работает агент сервера, всегда следует заботиться о правильном указании пути к каталогу служебных файлов кластера серверов. Если в процессе запуска агент сервера не обнаружит список кластеров, он создаст новый кластер на данном сервере.
В операционной системе Linux служебные файлы кластера серверов будут расположены в папке /home/usrlcv8/.lcv8/lC/lcv8 (или сокращенный вариант записи - ~/.1cv8/1C/1cv8).
Компенсация за задержку зарплаты в конфигурации 1С ЗУП 8 рассчитывается при подготовке ведомости на выплату зарплаты - Зарплата к выплате (Рабочий стол - закладка Расчет зарплаты - Журнал выплаты зарплаты - Зарплата к выплате) Заполним его:
Для автоматического расчета компенсации за задержку зарплаты, необходимо нажать на ссылку Расчет сумм к выплате
В появившейся форме в поле Рассчитать компенсацию за задержку выплаты на указывается количество дней, на которые была задержана выплата зарплаты.
Расчет суммы компенсации осуществляется в форме настройки расчета по кнопке Рассчитать.
Формула, по которой рассчитывается компенсация за задержку зарплаты: Результат = Сумма, подлежащая выплате * кол-во дней задержки* (Ставка рефинансирования ЦБ / 100 * 1/300)
Ставка рефинансирования ЦБ на конкретную дату отражена в форме Настройки параметров учета (Рабочий стол - закладка Учреждение - Настройка параметров учета) на закладке Прочие ставки
Данная функция возвращает значение Истина, если хотя бы в одной из таблиц перерасчета есть хотя бы одна запись по данному документу. Если таких записей нет, то функция вернет значение Ложь, и перерассчитывать записи этого документа не нужно.
Собственно перерасчет записей, как и их расчет, рекомендуется выполнять в процедуре общего модуля по тем же причинам, что и расчет. Процедура перерасчета отличается от процедуры расчета только тем, что в расчете участвуют не все записи документа, а только удовлетворяющие усло- виям проводимого перерасчета. Например, только записи по конкретным сотрудникам и конкретным видам расчета.
Наконец, после того как нужные записи перерассчитаны, необхо- димо средствами встроенного языка удалить соответствующие записи из таблицы перерасчета, так как перерасчет больше не требуется.
Процедуру перерасчета записей документа рекомендуется помещать в модуле этого документа как экспортную процедуру. В этом случае она может быть вызвана из других модулей, в том числе из обработки перерасчета, описанной в предыдущем разделе. В качестве параметров в процедуру должна передаваться информация о том, какие именно записи документа необходимо перерассчитать. Ниже приведен пример такой процедуры, где в качестве параметра используется список сотрудников, по которым необходимо выполнить перерасчет.
Процедура перерасчета записей документа
Процедуры общего модуля, выполняющие непосредственный перерасчет записей, по алгоритму схожи с процедурами расчета. Основное отличие состоит в том, что в процедурах перерасчета происходит расчет только тех записей, которые удовлетворяют заданным условиям. В данном случае это записи по заданному списку сотрудников. Также при перерасчете не нужно производить предварительную запись набора с формированием фактического периода действия, так как набор уже записан в регистр (перерассчитываемый документ всегда проведен). Ниже приведен пример процедур ПерерассчитатьЗаписиРегистраРасчета() и ПерерассчитатьНаборЗаписей(). Эти процедуры используют вызов тех же самых процедур и функций, которые используются при расчете.
Расчет записей одного документа необходимо производить в последовательности, определяемой приоритетом видов расчета, участвующих в этих записях. Поэтому исходный набор записей должен быть разбит на несколько поднаборов, в каждом из которых будут записи одного приоритета. Затем необходимо последовательно рассчитать записи каждого из поднаборов, записав результат расчета в регистр. Запись каждого рассчитанного поднабора необходима для формирования базы расчета следующих по приоритету поднаборов.
Ниже приведен пример процедуры, которая классифицирует записи исходного набора по приоритету видов расчета и для каждого уровня приоритета вызывает процедуру расчета поднабора записей. В данном случае из набора записей выгружается массив видов расчета, после чего по этим видам расчета строится запрос с иерархией по приоритету.
Расчет записей по приоритету видов расчета
После расчета записей каждого приоритета необходимо перезаписать весь набор в регистр для образования базы расчета для записей следующего приоритета. При этом параметр ТолькоЗапись метода Записать() должен быть установлен в значение Истина, так как пересчитывать фактический период действия уже не нужно, он был рассчитан при первоначальной записи.
ПРИМЕЧАНИЕ После расчета записей последнего приоритета набор записей можно не перезаписывать, но только в том случае, если в документе после этого не будет производиться расчет записей другого регистра, который может использовать данные текущего регистра как базу. Например, если после расчета регистра основных начислений в модуле будет сразу производиться расчет дополнительных начислений, то записи регистра основных начислений после расчета последнего приоритета должны быть перезаписаны.
Обработку ЗагрузкаданныхизТабличногоДокументаконечно должен знать каждый 1С-ник. И сколько бы обработок такого плана не появлялось, эта остается классикой. Даже претензии можно предъявлять если вы в ней что-то не понимаете к самой 1С. Хотя какие претензии, исходный код открыть – изучай, не хочу…
Еще чем мне нравится эта обработка – тем что вы читаете данные из внешнего источника, показываете их с помощью объекта табличное поле и только затем выбираете алгоритм загрузки в 1С. При чем загрузка у Вас происходит в среде 1С без привлечения дополнительных компонентов. Без всяких выпадов в неизвестный объект OLE, полей которые не прочитались в обработке загрузки. Если вы видете данные в табличном поле, то они и будут грузиться по вашему алгоритму.
Но что-то в ней не хватает. Конечно стандарта офисных документов ODF (Open Document Format и между прочим ГОСТ Р ИСО/МЭК 26300-2010). Как говаривал мой начальник – есть чем себя занять. Из всех внешних загрузок, которые сейчас есть к сожалению самыми распостраненными являются OLE(Com+) технологии. Возможно что-то еще появиться, но пока примемся за них.
Залезаем в код и видим несколько однотипных функуций
Функция мПрочитатьТабличныйДокументИзExcel(ТабличныйДокумент, ИмяФайла, НомерЛистаExcel = 1) Экспорт
Функция мПрочитатьТабличныйДокументИзТекста(ТабличныйДокумент, ИмяФайла, НомерЛистаExcel = 1) Экспорт
Пора добавить свою:
И добавим в форму выбора файла ods по тексту.
И выбор функции для ods
ИначеЕсли нРег(ФайлНаДиске.Расширение) = “.ods” Тогда
мПрочитатьТабличныйДокументИзCalc(ТабличныйДокумент,ДиалогВыбораФайла.ПолноеИмяФайла);
Согласно новому тарифу почтового сбора для Московской области при размере перечисляемой суммы от 1000 руб. до 5000 руб. включительно сбор рассчитывается по формуле:
(50 руб. + 4% от суммы) + (1,5 % от суммы свыше 1000 руб.)
Эта формула преобразуется к "классическому" виду: (35 руб. + 5.5% от суммы)
С учетом этого преобразования новая шкала в программе должна быть описана как показано на рисунке:
Если вкратце, то:
Начисление и праздничных и сверхурочных производится на основани приказа. В программе 1С ЗУП 8 расчет осуществляется на закладке "Расчет ЗП" - первичные документы - Оплата работы в праздники или Оплата сверхурочных часов. Открываете документ, заполняете его (расчитываете) и после проведения - заполняете табель (Форма Т-13) все ваши часы и сверхурочные и праздничные будут видны.
подробнее:
Для начисления оплаты сверхурочных часов используется документ «Оплата сверхурочных часов», в котором для каждого работника можно указать дату сверхурочной работы, количество часов, отработанных сверхурочно, и то, по полуторной или по двойной тарифной ставке будут эти сверхурочные часы оплачиваться. В этом документе автоматически рассчитывается сумма за каждый день, в который работник работал сверхурочно.
После того, как все сверхурочные часы работника зарегистрированы документом «Оплата сверхурочных часов», можно создавать для этого работника документ «Табель учета рабочего времени». При автоматическом заполнении табеля в соответствующих колонках документа появятся «двойные» записи, например «Я8, С2», обозначающие восьмичасовую явку и два часа сверхурочной работы.
При выводе формы Т-13 на печать также в графе формы, соответствующей дню переработки, будет выведено значение «Я/С», а на следующей строке «8/2». Документом «Начисление зарплаты работникам организаций» оплата сверхурочных не начисляется.
Важно! При вводе вручную в документ «Табель учета рабочего времени» нескольких видов использования рабочего времени («Я8, С2»), начисления сумм оплаты и фиксации продолжительности сверхурочных часов не происходит. При печати из документа формы Т-13 происходит не «копирование» табличной части документа в соответствующую печатную форму, а заполнение формы Т-13 по данным системы о фактически отработанном времени, и, если в системе нет соответствующего документа «Оплата сверхурочных часов», введенные вручную в табель сверхурочные часы в форме Т-13 отражены не будут.
Таким образом, факт работы сверхурочно должен фиксироваться в конфигурации документом «Оплата сверхурочных часов», после чего данные о переработке автоматически отобразятся в табеле, будь он документом или отчетом.
Двумерные штрих-коды – символики, разработанные для кодирования большого объема информации (до нескольких страниц текста). Такой код считывается с помощью специального сканера и позволяет быстро и безошибочно считывать информацию с документов. Это сделано с целью повышения эффективности ввода данных с бумажных носителей, то есть для быстрого считывания бухгалтерской и налоговой отчетности, подготовленной на машиночитаемых бланках с нанесением двухмерного штрих-кода символики PDF417.
Для печати машиночитаемых форм налоговых деклараций с двухмерным штрих-кодом PDF417 необходимо, чтобы на компьютере пользователя был установлен единый модуль печати машиночитаемых бланков и шаблоны машиночитаемых бланков.
Поддержка технологии формирования машиночитаемых бланков с двухмерным штрих-кодом включена в комплект форм регламентированной отчетности 1С. Скачать последнюю версию модуля двухмерный штрих-код PDF417 можно на сайте ФГУП "ГНИВЦ ФНС России" по ссылке http://www.gnivc.ru/inf_provision/form_templates/
После загрузки установите модуль:
Теперь приступаем к печати необходимого документа.
Проделаем это на примере бухгалтерского баланса. Заходим в меню Отчеты, Регламентированные отчеты, выбираем бухгалтерский баланс. После заполнения баланса переходим к печати, нам необходимо выбрать из двух предлагаемых вариантов первый: «Печатать сразу бланк формы с двухмерным штрихкодом PDF417».
Если выбрать "Показать бланк формы с двухмерным штрихкодом PDF417", то после выполнения необходимых подготовительных процедур на экране откроется форма предварительного просмотра, в которой предусмотрены возможности для просмотра сформированных отчетов и их непосредственного вывода на печать. Вот так будет выглядеть баланс с двухмерным штрих-кодом:
Для корректной обработки подготовленной печатной формы в налоговом органе, необходимо соблюдать некоторые требования к печати:
- Документ должен печататься только с одной стороны листа, не допускается печать сразу двух страниц на одном листе.
- Следует обратить внимание на качество печати. Считывание информации производится специальным сканером и для правильного распознавания им информации печать должна быть четкой и контрастной. Пятна, полосы и размытости от принтера, а также дефекты бумаги в зоне штрих-кода могут привести к неправильному считыванию. В данном случае нет гарантии, что до приемки дойдет та информация, которую Вы отправили, несмотря на правильность составления, выгрузки и шифровки.
- Изменение геометрических размеров печатаемых форм недопустимо.
- Листы отчетности в виде машиночитаемых форм не надо скреплять степлером или подшивать в скоросшиватель - это может повредить блок двухмерного штрихкода. Подготовленную печатную форму в виде машиночитаемой формы необходимо подписать и поставить печать.
Подготовленную таким образом отчетность необходимо представить в вашу налоговую инспекцию так же, как вы обычно это делаете.
Второй экземпляр можно подготовить для того, чтобы инспектор поставил на титульном листе отметку о приеме. Однако мы рекомендуем оставить себе "обычную" печатную форму отчетности - в том виде, как она утверждена Минфином России, без двухмерного штрих-кода.
Проверка контрольного числа Страхового номера проводится только для номеров больше номера 001–001–998
Контрольное число Страхового номера рассчитывается следующим образом:
• каждая цифра Страхового номера умножается на номер своей позиции (позиции отсчитываются с конца)
• полученные произведения суммируются
• сумма делится на 101
• последние две цифры остатка от деления является Контрольным числом.
Например: Указан страховой номер 112–233–445 95
Проверяем правильность контрольного числа:
цифры номера 1 1 2 2 3 3 4 4 5
номер позиции 9 8 7 6 5 4 3 2 1
1х9+1х8+2х7+2х6+3х5+3х4+4х3+4х2+5х1=95
95 / !101! =95
Контрольное число=95 – указано верно
Некоторые частные случаи:
99 / !101! =99
100 / !101! =00
101 / !101! =00
102 / !101! =01