Имя: Пароль:
1C
1С v8
ЗУП и УПП. Понимание механизма расчета зарплаты
, ,
0 be-may
 
17.01.13
16:56
Конфигурации ЗУП и УПП  (последние)

Задача. Нужно организовать выгрузку в XML  данных обо всех начислениях  и вычетах сотруднику за текущий месяц  (или за указанный месяц).
И все бы хорошо, но я не знаю этих конфигураций вообще.  С выгрузкой и с хмл нет проблем, проблема с пониманием как там это все работает.

Собственно, вопрос.
Какие регистры хранят начисления, какие хранят вычеты? Откуда “тащить” информацию?
1 Быдло замкадное
 
17.01.13
16:57
Регистры расчета
2 alex-pro
 
17.01.13
16:57
Прям на больную мозоль наступил! Не стыдно?)
3 shuhard
 
17.01.13
16:58
(1) ФСС в Рг расчетов ?
4 Tata001
 
17.01.13
16:58
а может вам просто документ "Отражение зп в регл уччете"
5 be-may
 
17.01.13
16:58
(1) какие именно
6 be-may
 
17.01.13
16:59
(2) ?
7 Tata001
 
17.01.13
17:00
(0)вам с какой целью надо?
8 be-may
 
17.01.13
17:02
(4)ну, вот смотрю этот документ в демке.
Там (я сейчас про ЗУП) только движения по регистру  "Отражение основных начислений в бухучете сотрудников организации"                                
Этого достаточно будет    ?
9 Tata001
 
17.01.13
17:02
(8)Какова цель ???
Данный документ отражает начисления сотрудников по бух.учёту
10 Мигрень
 
17.01.13
17:05
(3) Какое отношение ФСС имеет к начислениям и вычетам сотрудника.

(0) Регист расчета зарплаты, там по-моему три запроса нужно сделать: Основные начисления, дополнительные и вычеты.
11 Serg_1960
 
17.01.13
17:06
(7) "вам с какой целью надо?" - "организовать выгрузку в XML"(0) Чего не понятного-то? :)

Источник - конфигурация ЗУП или УПП (автор не определился ещё), приёмник - конфигурация ХМЛ (впервые слышу про такую)

:))
12 be-may
 
17.01.13
17:06
(7) мне нужны  все данные о сотруднике (т.е. все, что он получил и все то, за что с него вычли) отправить во внешнюю базу  (не 1С.).
13 lefthander
 
17.01.13
17:07
(3) вопрос про сотрудника его начисления и вычеты а это в Регистрах расчета.
14 lefthander
 
17.01.13
17:08
(12) расчетный листок, его за основу результат в файл...
15 be-may
 
17.01.13
17:10
(10) спасибо. По крайней мере, я теперь знаю куда копать :)

(11) да, примерно так.
Формат выгрузки xml ,  конфигурации источника - обе заявленные, конфигурация преемника .. вот это х.з какая.

Может быть и просто sql база. Эта база с 1С связана косвенно ( т.е. , например, в базе будут guid сотрудника, видов начислений и прочие ключи таблиц 1С ), но не будет возможности прямой и постоянной связи с базой 1С , поэтому будет выгрузка...
16 Serg_1960
 
17.01.13
17:21
(15) Понимаешь, тут такое дело: нужно определить для начала какие именно данные и для чего они нужны внешней программе. Только после этого можно предположить откуда их "правильнее" брать. В УПП и ЗУП они "рассыпаны" по разным регистрам и, кстати, "отражение зарплаты" совсем не так чтобы "обо всех начислениях  и вычетах сотруднику за месяц"...
17 be-may
 
17.01.13
17:23
(16) Допустим, внешняя программа должна печатать листки расчета, аналогично тому, какие выдает 1С
18 lefthander
 
17.01.13
17:27
(17) может (14) сообщение прочитаете?
19 be-may
 
17.01.13
17:30
(14)  спасибо вам за ответ, я прочитала.
Вы имеете в виду, передавать в виде готовой картинки/таблицы или мне посмотреть в отладчике как формируется расчетный лиcток ?
20 Alexperumov
 
17.01.13
17:33
(0)Тут как бы первое что надо знать, что за прога, без этого вопрос не имеет сысла)
21 lefthander
 
17.01.13
17:34
(19) Точно! посмотреть как формируется, и вы будете знать где они хранятся. и даже сможете их получить, но не в табличку выводить а прямо в файл
22 lefthander
 
17.01.13
17:35
(20) Ну да, пока нет ясности какой формат на приеме, говорить в какой формат и какие данные выгружать, не имеет смысла.  :)
23 be-may
 
17.01.13
17:35
(20) да какая разница..?
24 be-may
 
17.01.13
17:37
(21) я конечно же так и сделаю, просто почему-то подумалось предварительно облегчить себе работу : спросить у знающих людей тут..
25 Пеппи
 
17.01.13
17:39
а еще лучше сформировать этот расчетный лист в 1с и передать его в эту прогу в виде картинки или в виде екселя) как угодно)
26 Пеппи
 
17.01.13
17:40
(17) а зарплата будет в 1с считаться или в этой внешней проге?
27 ptiz
 
17.01.13
17:40
(24) Смотреть код расчетных листков не советую - поседеешь пока разберешься. Лучше выгружать готовую ексель-табличку из 1С.
28 be-may
 
17.01.13
17:41
(25) Увы, так нельзя. Нужны сами данные.
29 lefthander
 
17.01.13
17:41
(24) очень специфическая задача, много неясного. Маловероятно, что ее решают каждый день.
30 be-may
 
17.01.13
17:42
(26) Зарплата в 1С должна считаться. При проведении документа начисления з/п  я так понимаю, должен переформировываться хмл и заново отсылаться
31 be-may
 
17.01.13
17:45
(27) е мое.  :(
А что, неужели нельзя как-то просто сделать запрос к регистрам?

Вот например, чтобы узнать сколько товара на складе, мы берем остаток на начало месяца + все приходы по регистру минус все расходы. Неужели тут нельзя также сделать?
32 Alexperumov
 
17.01.13
17:46
(31) Можно) Там запросы по 3 А4 листа - можно посидеть поизучать).  Нечто простое добывается просто из регистров расчета
33 Пеппи
 
17.01.13
17:46
(31) ну легче наверное еще одну 1с поставить и настроить обмен между программами.
34 be-may
 
17.01.13
17:47
(29) дык, а что не ясно?
Не важно какая база преемник. Условно  - это черный ящик.
Будет ТЗ в котором детально будет описан формат принимаемых данных..  Прием , разбор и загрузка этого хмл - это дело второе .
35 Alexperumov
 
17.01.13
17:47
(34)  Может тебе данные из дока ЗарплатаКВыплатеОрганизаций нужны?
36 lefthander
 
17.01.13
17:48
(31) е мое, так в документе начисления зп и есть процедура которая формирует запрос к данным для формирования листка. Все запутанное там для того что бы его вывести на просмотр.
37 be-may
 
17.01.13
17:50
(33) так тоже нельзя.
(35) может.
я ж не знаю какие регистры и доки отвечают за это (хотя, блин, положа руку на сердце - за тот час, что я тут вишу уже бы могла и посмотреть.. ). Вот хотела понять какие доки ковырять..
38 Пеппи
 
17.01.13
17:50
(34) Очень важно, структура данных же не один в один у этих программ.
39 be-may
 
17.01.13
17:51
(36) ок, спасибо. и в УПП и в ЗУП это один и тот же документ ?
40 Пеппи
 
17.01.13
17:52
(39) в УПП и ЗУП зарплата полностью идентичная, можете смотреть только ЗУП
41 be-may
 
17.01.13
17:53
(38)
Ну, хорошо.. будет что-то типо универсальной выгрузки
Если ЭТО_ЗУП релиз такой-то Тогда
 (тут код для ЗУП)
ИНАЧЕЕСЛИ это УПП Тогда
..... бла-бла-бла

Аналогично на принимающей стороне.
42 be-may
 
17.01.13
17:54
(40) спасибо. уже веселее)
43 Alexperumov
 
17.01.13
17:54
(41)Это тебе не для клиент банка случаем?
44 be-may
 
17.01.13
17:55
(43) нет
45 lefthander
 
17.01.13
17:55
(39) Да, и я уверен, что будет все попроще чем для листка.
46 lefthander
 
17.01.13
17:56
Листок это квинтэссенция получения данных по начислениям и удержаниям. :) Удачи.
47 be-may
 
17.01.13
17:57
(46) спасибо. завтра, на свежую голову и приступлю)
48 and2
 
17.01.13
18:10
(24) да прям из 1с форму и сформируй :)

ТабДок=Новый ТабличныйДокумент;
   ОтчетРасшифровка = Отчеты.РасчетныеЛисткиОрганизаций.Создать();
           ТиповыеОтчеты.ДобавитьОтбор(ОтчетРасшифровка.КомпоновщикНастроек,      "Организация",           Организация);
           ТиповыеОтчеты.ДобавитьОтбор(ОтчетРасшифровка.КомпоновщикНастроек,      "Сотрудник",           Сотр);
           ТиповыеОтчеты.УстановитьПараметр(ОтчетРасшифровка.КомпоновщикНастроек, "НачалоПериода",       ПериодРегистрации);
           ТиповыеОтчеты.УстановитьПараметр(ОтчетРасшифровка.КомпоновщикНастроек, "КонецПериода",        КонецМесяца(ПериодРегистрации));
           ТиповыеОтчеты.УстановитьПараметр(ОтчетРасшифровка.КомпоновщикНастроек, "Группировать",        ложь);
           ТиповыеОтчеты.УстановитьПараметр(ОтчетРасшифровка.КомпоновщикНастроек, "ВидРасчетногоЛистка", "Подробно");
           
           ФормаОтчета = ОтчетРасшифровка.ПолучитьФорму("ФормаОтчета", );
                       
           ОтчетРасшифровка.СформироватьОтчет(ТабДок, ФормаОтчета.ДанныеРасшифровки, истина);
49 gae
 
17.01.13
18:26
(0) Еще про удержания не забудь.
А если надо те же данные, что в расчетном листке перекинуть - то можно залезть вовнутрь расчетного листка и посмотреть, что он откуда читает.
Правда над зарплатными запросами можно долго промедитировать...
50 and2
 
18.01.13
09:08
(47) кстати, в отчете РасчетныеЛистки есть замечательная табличка
- НачисленияУдержания в виде таблицы значений
51 be-may
 
18.01.13
09:15
(48), (50) спасибо тебе большое.
гляну.

сижу курсы смотрю Гилева-Насипова об автоматизации расчета з/п. Вещь.
52 lefthander
 
18.01.13
09:27
(51) У них много вкусных вещей. Кстати Гилев-Насипов это не один человек а два, если что. :)
53 be-may
 
18.01.13
09:29
(52) :))))) Я знаю.
А что тебе у них особенно нравится?
Я вот только что после тренинга по УТ11.
54 lefthander
 
18.01.13
09:31
(53) А все. и курсы основные, и полный тренинг УПП :) Я, можно сказать, птенец из их гнезда в 8.2. :)
Кстати получилось побороть проблему или в процессе?
55 be-may
 
18.01.13
09:37
(54) я еще не начинала, только на работу пришла.

Собственно, мне сейчас не нужно писать саму выгрузку, у меня задача сейчас  - разобраться с механизмами начисления з/п и написать ТЗ для разработчиков той, второй не 1С-ной базы.
56 фросия
 
18.01.13
09:45
(55) Механизм:
в РС плановые начисления, хранятся размеры окладов и т.д.

доки начислений зп и прочих оплат берут инфу из РС и РР, рассчитывают ЗП -движения в РР основные, дополнительные, РН - взаиморасчеты с работниками, сведения о доходах для налогов,...

доки расчета налогов- берут данные из РН сведения о доходах- считают налоги- пишут инфу в РН связанные с налогами.
57 lefthander
 
18.01.13
09:57
(55) тогда не стыковка с (30). :) Где все таки будет считаться зарплата? В 1С или черном ящике?
58 be-may
 
18.01.13
10:12
(56) спасибо.
о.. еще и РН там участвуют..

(57) почему же нестыковка?
Зарплата начисляется и выплачивается в 1С. В стороннюю базу просто передаются результаты этих вычислений. Т.е. не важно как эти данные были вычислены, важно, грубо говоря 1) кому, 2) сколько, 3 ) за что (детализация)

Т.е. провелся , например  в 1С документ "начисление ЗП". В стороннюю базу отправились данные о том, что Иванову выплатили 10000 р оклада, 1000 - премия и 100 штрафа (к примеру)
59 ХочуСказать
 
18.01.13
10:18
(58) гм... практически все регистры которые есть в ЗУПе так или иначе учавствуют в расчете зарплаты...

самой просто путь решение тебе уже дали... сформировать расчетный листок, сделать разбор табличного документа и отправить его в файл XML...
а так изучай структуру хранения
60 ХочуСказать
 
18.01.13
10:19
(58) зарплата расчитывается в одном общем модуле и в одном дументе...
все остальные регистры используются для хранения условий и результата расчета
61 ХочуСказать
 
18.01.13
10:20
(55) вот именно поэтому я и не люблю всяких там "постановщиков задач"
62 be-may
 
18.01.13
10:21
(61) что-то ты какой-то "на негативе" сегодня )
63 ХочуСказать
 
18.01.13
10:24
(62) задело за живое ... постановщики вечно не в курсе, как все устроено, но указывают программистам, что писать

по факту в ЗУП, до момента формирования документа Отражение ЗП в регл. учет это не расчет зарплаты, а так - черновик
64 ХочуСказать
 
18.01.13
10:28
хотя если нужны данные только по взаиморасчетам сотрудника(без налогов на него), то возможно начисленния зп сотрудникам и хватит, только там не все..
так как некоторые документы в обход начисления зп данные пишут
и нужно учитывать, что документов начисл. зп может быть более одного в общем случае :)
65 be-may
 
18.01.13
10:29
(63) да, не. я ж не жестко.. самое главное - формат передаваемых данных, их полнота, корректность и оперативность подачи, а как они там структуру своих таблиц построят и как программить будут - это уже их дела.

ТЗ это громко сказано ) скорее пояснительная записка ))
66 be-may
 
18.01.13
10:30
(64) не, нужно все.  По сути, все, что отражает расчетный листок, то и нужно
67 ХочуСказать
 
18.01.13
10:31
(66) в расчетном листке только НДФЛ, который сотрудник сам платит,
налогов в фонды, которые платит за него организация там нет
68 be-may
 
18.01.13
10:33
(67) да, все правильно. То, что платит организация мне не нужно.
нужно чтобы в сторонней базе было видно, почему человек получил на руки именно столько, сколько получил..
69 ХочуСказать
 
18.01.13
10:35
(68) тогда нужны регистр расчета:
основные+доп начисления
+ удержения
+ регистр накопления куда пишется НДФЛ

если еще нужен остаток между (начислено-выплачено) то и данные по регистру Взаиморасчеты с сотрудниками
70 be-may
 
18.01.13
10:39
(69) спасибо.
71 ХочуСказать
 
18.01.13
10:40
документа "начисление зп" не хватит,т.к. там не будет отклонениий (отпускных, больничных, увольнение и т.п.)
72 IBTM
 
18.01.13
10:54
(0) тебе нужен реальный контакт со специалистом по ЗУП, здесь тебе очень много хороших вещей скажут, но ты не зная зуповской конфы, никогда не собирешь их в месте!
73 IBTM
 
18.01.13
10:56
проще тебе сделать типовой перенос на демо базах из ЗиК 7.7 в ЗУП8. Потом заходишь в ЗУП, открываешь документы "перенос данных" открываешь каждый и смотришь какие регистры и т.д.
74 KnightAlone
 
18.01.13
12:53
это по начислениям

ВЫБРАТЬ РАЗРЕШЕННЫЕ
   Начисления.ПериодРегистрации,
   Начисления.ВидРасчета,
   Начисления.ФизЛицо,
   СУММА(Начисления.Результат) КАК Результат
ИЗ
   (ВЫБРАТЬ
       ОсновныеНачисленияРаботниковОрганизаций.ПериодРегистрации КАК ПериодРегистрации,
       ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета КАК ВидРасчета,
       ОсновныеНачисленияРаботниковОрганизаций.ФизЛицо КАК ФизЛицо,
       ОсновныеНачисленияРаботниковОрганизаций.Результат КАК Результат
   ИЗ
       РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций КАК ОсновныеНачисленияРаботниковОрганизаций
   ГДЕ
       ОсновныеНачисленияРаботниковОрганизаций.ПериодРегистрации МЕЖДУ &НачалоПериода И &КонецПериода
   
   ОБЪЕДИНИТЬ ВСЕ
   
   ВЫБРАТЬ
       ДополнительныеНачисленияРаботниковОрганизаций.ПериодРегистрации,
       ДополнительныеНачисленияРаботниковОрганизаций.ВидРасчета,
       ДополнительныеНачисленияРаботниковОрганизаций.ФизЛицо,
       ДополнительныеНачисленияРаботниковОрганизаций.Результат
   ИЗ
       РегистрРасчета.ДополнительныеНачисленияРаботниковОрганизаций КАК ДополнительныеНачисленияРаботниковОрганизаций
   ГДЕ
       ДополнительныеНачисленияРаботниковОрганизаций.ПериодРегистрации МЕЖДУ &НачалоПериода И &КонецПериода) КАК Начисления

СГРУППИРОВАТЬ ПО
   Начисления.ФизЛицо,
   Начисления.ПериодРегистрации,
   Начисления.ВидРасчета

удержания

ВЫБРАТЬ РАЗРЕШЕННЫЕ
   УдержанияРаботниковОрганизаций.ПериодРегистрации,
   УдержанияРаботниковОрганизаций.Организация,
   УдержанияРаботниковОрганизаций.ФизЛицо,
   УдержанияРаботниковОрганизаций.Результат,
   УдержанияРаботниковОрганизаций.ВидРасчета
ИЗ
   РегистрРасчета.УдержанияРаботниковОрганизаций КАК УдержанияРаботниковОрганизаций
ГДЕ
   УдержанияРаботниковОрганизаций.ПериодРегистрации МЕЖДУ &НачалоПериода И &КонецПериода
75 KnightAlone
 
18.01.13
12:53
осталось выбрать НДФЛ, он в этих регистрах не отражается
76 KnightAlone
 
18.01.13
12:59
НДФЛ попробой так:

ВЫБРАТЬ РАЗРЕШЕННЫЕ
   НДФЛРасчетыСБюджетом.Период,
   НДФЛРасчетыСБюджетом.ВидДвижения,
   НДФЛРасчетыСБюджетом.Организация,
   НДФЛРасчетыСБюджетом.ФизЛицо,
   НДФЛРасчетыСБюджетом.Налог,
   НДФЛРасчетыСБюджетом.МесяцНалоговогоПериода
ИЗ
   РегистрНакопления.НДФЛРасчетыСБюджетом КАК НДФЛРасчетыСБюджетом
ГДЕ
   НДФЛРасчетыСБюджетом.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
   И НДФЛРасчетыСБюджетом.Период МЕЖДУ &НачалоПериода И &КонецПериода
77 KnightAlone
 
18.01.13
13:01
соответственно начисления - удержания - НДФЛ = сумма на руки. вроде ничего не забыл. поправьте если не так
78 be-may
 
18.01.13
13:03
(77) спасибо большое.
79 KnightAlone
 
18.01.13
13:11
насколько я понял из (0) данные нужны за текущий месяц, поэтому про сальдо с прошлого месяца не заморачивался. потому не понятны все отсылы к расчетному листку. зачем это нагромождение. если все данные можно взять простыми запросами из 4х регистров?

пожалуйста :)
80 and2
 
18.01.13
14:50
(79) понятно что постановка мутна....

а причина отсыла к расчетному листку до безобразия проста - в нем обращение точно к тем же регистрам. при этом не надо заморачиваться , что 1-сы там поменяет в регистрах и запросах в будующем. ну и в методике исчисления.
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.