Форма 102 за 2008 год (+)
0 (0)
- Форма 102 за 2008 год (+) ( Александр 26.02.2009 07:41 )5(1)Пробовал уже кто-нибудь выпустить форму 102 за 2008 год?
В этом году много документов СПОД (начальный СПОД 706*-707*, переносы СПОД на счета межфилиальных расчетов, завершающий СПОД 707*-708*).
Никак не получается выпустить отчет с заполненными строчками "в том числе СПОД" - выходят одни нули. Протокол контроля документов СПОД показывает документы (т.е. с самими документами все нормально, их система видит).
Кроме того, по 302-П должно вестись два регистра отчета - один по 706, другой по 707.
>> Ответить- Категория 132 ( shawl77 26.02.2009 08:38 )5(1)В документации пишут про СПОДы: "В случае, если данный документ не проводится по счетам доходов/расходов (70601 - 70605/70606-70610), а относится напрямую на счета 708*, на документ следует установить категорию №132 "Символ доходов/расходов", указав в качестве ее значения нужный символ формы 102." Читали?
>> Ответить- Скачайте свежую сборку Отчетов ЦБ и документацию к ней (+) ( Александр 26.02.2009 10:18 )5(1)Категория не устанавливается на документы 706*-707*, 707*-708*
Даже в свойствах данной категории исключены документы корреспонденции 708*
>> Ответить- А вам и не нужно на эти документы ставить 132 категорию ( shawl77 26.02.2009 11:18 )5(1)Потому что нужны только сами проводки по доходам-расходам, а не переносы с 706* на 707* и с 707* на 708*.
Все логично. Вы в 2009 году после переноса остатков с 706* на 707* работаете со счетами 707* как с обычными счетами доходов-расходов. А чтобы было видно, что это доходы-расходы прошлого года, ставите на документах букву С. По идее, этой буквы вроде как должно быть достаточно, чтобы понять, что такие документы надо учесть в 102-й форме. Ан нет, системе хочется, чтобы на этих документах еще и символ стоял в 132 категории. Попробуйте пробежать макросом и проставить, и в строчке СПОД появятся циферки.
>> Ответить- Категории поставил, но (+) ( Александр 27.02.2009 03:48 )5(1)не знаю как у Вас могло все получиться.
Суммы СПОД все равно не попадают в отчет (хотя краткий протокол пишет что есть документы СПОД, смотрите подробный протокол).
Стал копать макросы :(
Ошибка в макросе CF_102.mac:
MACRO ПроверитьДокументыСКатегорией132() VAR rc, cur, sumV, sumR; VAR AppKind, AppKey; macro CheckCarryOver (acc1, acc2) /* Счет дебета или счет кредита документа д.б. открыты на балансовом 707 */ if (( CompareStrWithMasks( "707*", acc1 ) != 0 ) or ( CompareStrWithMasks( "707*", acc2 ) != 0 )) return true; end;
Вместо оператора OR нужно поставить AND (иначе ВСЕ документы корреспонденции с 707* будут сразу отфутболиваться)
MACRO ПроверитьДокументыСКатегорией132() VAR rc, cur, sumV, sumR; VAR AppKind, AppKey; macro CheckCarryOver (acc1, acc2) /* Счет дебета или счет кредита документа д.б. открыты на балансовом 707 */ if (( CompareStrWithMasks( "707*", acc1 ) != 0 ) and ( CompareStrWithMasks( "707*", acc2 ) != 0 )) return true; end;
>> Ответить- Ошибка в макросе CF_102.mac ( SortoevAG 27.02.2009 06:55 )5(1)Ошибка в макросе есть, но не в macro CheckCarryOver (acc1, acc2), а там где вызывают
// if (not CheckCarryOver(arhrub.rec.Account_Payer, arhrub.rec.Account_Receiver))
нужно
if (CheckCarryOver(arhrub.rec.Account_Payer, arhrub.rec.Account_Receiver))
в вашем варианте она скорее всего всегда будет возвращать false и будет бессмысленной
>> Ответить- Именно в CheckCarryOver (+) ( Александр 27.02.2009 07:08 )5(1)Уже опробовал на практике - строчки СПОД появились.
А если как у Вас убрать not при вызове CheckCarryOver, то тогда и в самой CheckCarryOver нужно инвертировать все проверки.
Сейчас алгоритм CheckCarryOver построен так, что если документ НЕ включаем в выборку СПОД, то вернуть нужно TRUE.
>> Ответить- CheckCarryOver ( SortoevAG 27.02.2009 10:05 )5(1)функция работает правильно, нужно инвертировать проверки при вызове функции или в самой функции, я сделал при вызове. в противном случае если бы это функция вызывалась бы где нибудь еще пришлось бы переписывать все ее вызовы.
вы же сделали ее работу бессмысленной т.к корреспонденции счетов 707*-707* (только при этом условии она возвратит true) в природе я не встречал
>> Ответить- Я же говорю, уже проверено (+) ( Александр 27.02.2009 10:13 )5(1)Вы сами можете более внимательно разобрать условие:
/* Счет дебета или счет кредита документа д.б. открыты на балансовом 707 */ if (( CompareStrWithMasks( "707*", acc1 ) != 0 ) and ( CompareStrWithMasks( "707*", acc2 ) != 0 )) return true; end;
В дистрибутиве вместо AND стоял OR - это условие сразу "заворачивало" ЛЮБУЮ проводку где по счету плательщика ИЛИ получателя стоял счет 707*.
Теперь же условие соответствует комментарию (/* Счет дебета или счет кредита документа д.б. открыты на балансовом 707 */), т.е. если счет получателя И счет плательщика не равны 707* (т.е. ХОТЬ ОДИН ИЗ НИХ должен быть 707*).
>> Ответить- Я же говорю, уже проверено (+) ( SortoevAG 27.02.2009 10:49 )5(1)да вы правы, подзабыл что возвращает CompareStrWithMasks, почему-то думал что позицию в строке
>> Ответить
- Я же говорю, уже проверено (+) ( SortoevAG 27.02.2009 10:49 )
- Я же говорю, уже проверено (+) ( Александр 27.02.2009 10:13 )
- CheckCarryOver ( SortoevAG 27.02.2009 10:05 )
- Ага, блин ( bada 27.02.2009 08:55 )5(1)Счас пытаюсь убедить в этом суппорт :(
я закомментировал строки 614-617
/* Счет дебета или счет кредита документа д.б. открыты на балансовом 707 */
/* if (( CompareStrWithMasks( "707*", acc1 ) != 0 ) or
( CompareStrWithMasks( "707*", acc2 ) != 0 ))
return true;
end; */
>> Ответить
- Именно в CheckCarryOver (+) ( Александр 27.02.2009 07:08 )
- Все ясно :) ( shawl77 27.02.2009 07:06 )5(1)Мы с Вами на разных патчах считали 102 форму. Я "тренироваться" начала еще до выхода 15-го патча, и СПОДы прекрасно считались. Макрос cf_102.mac в новой версии изменился: неудивительно, что и результат другой. Здорово, что Вы нашли эту ошибочку, Александр. Можно и нам смело переходить на 15-й патч :) Теперь-то у Вас красиво все со СПОДами получилось?
>> Ответить- СПОД появился (+) ( Александр 27.02.2009 07:09 )5(1)Теперь дело за бухгалтерией - все проверить.
>> Ответить - Я тренировался на 14-ом патче ( bada 27.02.2009 09:01 )5(1)Бухгалтерия сказала неправильно, исправительные (обратные) проводки должны с минусом, суппорт сказал что это пофиксили в 15-ом патче, а в этом патче ошибка макросе cf_102.mac :(, исключаются все проводки по 707-ым счетам.
>> Ответить- Если в 15 патче больше ошибок нет (+) ( Александр 27.02.2009 09:51 )5(1)то лечится достаточно просто - заменой оператора OR на AND.
>> Ответить- Уже оформлен запрос ( bada 27.02.2009 10:50 )5(1)Not specified
>> Ответить
- Уже оформлен запрос ( bada 27.02.2009 10:50 )
- Если в 15 патче больше ошибок нет (+) ( Александр 27.02.2009 09:51 )
- СПОД появился (+) ( Александр 27.02.2009 07:09 )
- Ошибка в макросе CF_102.mac ( SortoevAG 27.02.2009 06:55 )
- Категории поставил, но (+) ( Александр 27.02.2009 03:48 )
- А вам и не нужно на эти документы ставить 132 категорию ( shawl77 26.02.2009 11:18 )
- Скачайте свежую сборку Отчетов ЦБ и документацию к ней (+) ( Александр 26.02.2009 10:18 )
- Должен отдельный отчет Приложения 4 по счетам 707 ( bada 26.02.2009 09:34 )5(1)Вчера убеждал в этом суппорт, вот фраза из 302-П:
В период составления годового отчета ведутся два регистра отчета о прибылях и убытках: один - по балансовому счету N 706 "Финансовый результат текущего года", второй - по балансовому счету N 707 "Финансовый результат прошлого года".
>> Ответить - Еще проблема с 28101 (+) ( Александр 02.03.2009 05:37 )5(1)На всякий случай запощу, пока копаю.
Проблема с 28101 символом (Налог на прибыль) - сумма в отчет не попадает, хотя полный протокол показывает что суммы по символу есть.
Ни у кого данной проблемы не было?
Символа нет в годовом отчете (но там может какая проблема с 70711), но его также нет и в отчете за месяц.
>> Ответить- В годовом интересно (+) ( Александр 02.03.2009 07:16 )5(1)В отчете сумма по 28101 показана 0, но "в том числе СПОД" - сумма по 70711 счету (в документах установлена 132 категория).
>> Ответить- Теперь проблема в макросе C_ITOG02.MAC (+) ( Александр 02.03.2009 08:36 )5(1)Пока не понял, может где-то так и надо, но в случае многофилиального банка, значения некоторых переменных, в том числе и Фн2_28101_Ру обнуляются.
Строки с 273:
if ( НомерПодразделения == 32752 ) ... elif (( НомерПодразделения == 0 )/* and NotDepart */) /* бесфилиальный банк */ ... else //в филиале ...
Значение переменной Фн2_28101_Ру присваивается только в первом и втором блоках IF, по ELSE переменные обнуляются!
У нас номер подразделения равен 1 (у филиала 2), поэтому по Головному офису символ 28101 будет ВСЕГДА 0. Следовательно, таким же будет и свод. Смысл подобной конструкции в макросе?
>> Ответить
- Теперь проблема в макросе C_ITOG02.MAC (+) ( Александр 02.03.2009 08:36 )
- В годовом интересно (+) ( Александр 02.03.2009 07:16 )
- Категория 132 ( shawl77 26.02.2009 08:38 )