# Date: 16/05/06 # Version: 105 $DOC(SD_PAYBANK_OUT) name=Исходящий платеж по банку для СД class=1 product=ALD_FUND name_formula="Исх пл по банку N "+@doc_number+" от " + convert(varchar,@doc_date,3) remark_formula=null $STATE(DEL) name=Удален class=2 $ENDSTATE $STATE(ED) name=Редактируется class=0 $ENDSTATE $STATE(NEW) name=Начальный class=1 $ENDSTATE $STATE(NOT_ACPT) name=Не принят банком class=0 $ENDSTATE $STATE(NOT_CHECK) name=Требует ручной квитовки class=0 $ENDSTATE $STATE(PERF) name=Проведен class=0 $ENDSTATE $STATE(SIGNATURE) name=Подписан class=0 $ENDSTATE $PROP(DOC_DATE) name=Дата документа field_name=doc_date table_name=t_paydocs field_type=datetime field_length=8 field_scale=3 field_prec=23 page=1 order=1 init_class=1 init_formula=.OPERDAY unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(DOC_NUMBER) name=Номер документа field_name=doc_number table_name=t_paydocs field_type=varchar field_length=30 field_scale=null field_prec=30 page=1 order=2 init_class=1 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_ID) name=Отправитель field_name=from_partner_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=3 init_class=1 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_ID) name=Получатель field_name=to_partner_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=4 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_ACC_ID) name=Cчет отправителя field_name=from_partner_acc_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=5 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_ACC_ID) name=Cчет получателя field_name=to_partner_acc_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=6 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(DOC_SUM) name=Сумма в валюте field_name=doc_sum table_name=t_paydocs field_type=money field_length=8 field_scale=4 field_prec=19 page=1 order=7 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(CUR_ID) name=Валюта суммы field_name=cur_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=8 init_class=1 init_formula=.CUR("RUR") unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TAX_NDS_RATE) name=Ставка НДС field_name=tax_nds_rate table_name=t_paydocs field_type=money field_length=8 field_scale=4 field_prec=19 page=1 order=9 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TAX_NDS_SUM) name=Сумма НДС field_name=tax_nds_sum table_name=t_paydocs field_type=money field_length=8 field_scale=4 field_prec=19 page=1 order=10 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PAYS_QUEVE) name=Очередность платежа field_name=pays_queve table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=11 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(DATE_OTGR) name=Дата отгр продукции field_name=date_otgr table_name=t_paydocs field_type=datetime field_length=8 field_scale=3 field_prec=23 page=1 order=12 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TELEGR_ACC_STR) name=телеграфн счет field_name=telegr_acc_str table_name=t_paydocs field_type=varchar field_length=50 field_scale=null field_prec=50 page=1 order=13 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PERPOSE_STR) name=Назначение field_name=perpose_str table_name=t_paydocs field_type=varchar field_length=255 field_scale=null field_prec=255 page=1 order=14 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(COVERED_SUM) name=Покрытая сумма field_name=covered_sum table_name=t_paydocs field_type=money field_length=8 field_scale=4 field_prec=19 page=1 order=15 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(IS_COMPLETED) name=Исполнен field_name=is_completed table_name=t_paydocs field_type=int field_length=4 field_scale=0 field_prec=10 page=1 order=16 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(COMPLETE_DATE) name=Дата исполнения field_name=complete_date table_name=t_paydocs field_type=datetime field_length=8 field_scale=3 field_prec=23 page=1 order=17 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PAY_PERPOSE) name=Код целевого назначения field_name=pay_perpose table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=18 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PAY_TYPE_ID) name=Вид оплаты field_name=pay_type_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=19 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(BANK_ACC_REP_ID) name=ID выписки из банка field_name=bank_acc_rep_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=20 init_class=1 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_NAME) name=Имя получателя field_name=to_partner_name table_name=t_paydocs field_type=varchar field_length=255 field_scale=null field_prec=255 page=1 order=21 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_INN) name=ИНН получптеля field_name=to_partner_inn table_name=t_paydocs field_type=varchar field_length=30 field_scale=null field_prec=30 page=1 order=22 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_BANK_NAME) name=Банк полуяателя field_name=to_partner_bank_name table_name=t_paydocs field_type=varchar field_length=255 field_scale=null field_prec=255 page=1 order=23 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_BANK_BIC) name=BIC банка получателя field_name=to_partner_bank_bic table_name=t_paydocs field_type=varchar field_length=30 field_scale=null field_prec=30 page=1 order=24 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_NAME) name=Имя отправителя field_name=from_partner_name table_name=t_paydocs field_type=varchar field_length=255 field_scale=null field_prec=255 page=1 order=25 init_class=1 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_INN) name=ИНН отправителя field_name=from_partner_inn table_name=t_paydocs field_type=varchar field_length=30 field_scale=null field_prec=30 page=1 order=26 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_BANK_NAME) name=Банк отправителя field_name=from_partner_bank_name table_name=t_paydocs field_type=varchar field_length=255 field_scale=null field_prec=255 page=1 order=27 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_BANK_BIC) name=BIC банка отправителя field_name=from_partner_bank_bic table_name=t_paydocs field_type=varchar field_length=30 field_scale=null field_prec=30 page=1 order=28 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(COMPOSE_LINE_COMMENT) name=Состав строки комментария field_name=compose_line_comment table_name=t_paydocs field_type=int field_length=4 field_scale=0 field_prec=10 page=1 order=29 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PAYMENT_TYPE) name=Вид перевода платежа field_name=payment_type table_name=t_paydocs field_type=int field_length=4 field_scale=0 field_prec=10 page=1 order=30 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_ACC_NO) name=Номер счета отправителя field_name=from_partner_acc_no table_name=t_paydocs field_type=varchar field_length=150 field_scale=null field_prec=150 page=1 order=31 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_CORR_ACC_NO) name=Корреспондентский счет отправителя field_name=from_partner_corr_acc_no table_name=t_paydocs field_type=varchar field_length=150 field_scale=null field_prec=150 page=1 order=32 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_CORR_ACC_NO) name=Корреспондентский счет получателя field_name=to_partner_corr_acc_no table_name=t_paydocs field_type=varchar field_length=150 field_scale=null field_prec=150 page=1 order=33 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_ACC_NO) name=Номер счета получателя field_name=to_partner_acc_no table_name=t_paydocs field_type=varchar field_length=150 field_scale=null field_prec=150 page=1 order=34 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(SUM_STR) name=Сумма прописью field_name=sum_str table_name=t_paydocs field_type=varchar field_length=255 field_scale=null field_prec=255 page=1 order=37 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(URGENCY_PAYMENT_ID) name=Срочность платежа field_name=urgency_payment_id table_name=t_paydocs field_type=int field_length=4 field_scale=0 field_prec=10 page=1 order=38 init_class=1 init_formula=1 unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FOUNDATION_ID) name=Документ - основание платежа field_name=foundation_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=39 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(INTERNAL_NAMBER) name=Внутренний номер field_name=internal_namber table_name=t_paydocs field_type=varchar field_length=30 field_scale=null field_prec=30 page=1 order=40 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(BANK_TRAN_NO) name=Номер транзакции банка field_name=bank_tran_no table_name=t_paydocs field_type=varchar field_length=100 field_scale=null field_prec=100 page=1 order=41 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FOUNDATION_NO) name=Номер документа-основания field_name=foundation_no table_name=t_paydocs field_type=varchar field_length=100 field_scale=null field_prec=100 page=1 order=42 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FOUNDATION_DATE) name=Дата документа - основания field_name=foundation_date table_name=t_paydocs field_type=datetime field_length=8 field_scale=3 field_prec=23 page=1 order=43 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PURPOSE_ID) name=ID целевого назначения field_name=purpose_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=44 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PIF_PAY_ID) name=Заявка на выкуп паев field_name=pif_pay_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=46 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_BRANCH_NO) name=Расчетный счет филиала field_name=to_partner_branch_no table_name=t_paydocs field_type=varchar field_length=100 field_scale=null field_prec=100 page=1 order=35 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_BRANCH_NAME) name=Наименование филиала field_name=to_partner_branch_name table_name=t_paydocs field_type=varchar field_length=255 field_scale=null field_prec=255 page=1 order=36 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FACT_PARTNER_ID) name=Фактический получатель field_name=fact_partner_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=51 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(UK_ID) name=Управляющий НПФ field_name=uk_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=47 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PLACE_ID) name=Площадка field_name=place_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=48 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(BANK_COMIS) name=Комиссия банка field_name=bank_comis table_name=t_paydocs field_type=money field_length=8 field_scale=4 field_prec=19 page=1 order=49 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(CANCEL_PAYMT_ID) name=Возвращаемый платеж field_name=cancel_paymt_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=50 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(OWNER_ID) name=ID паевого фонда field_name=owner_id table_name=td_depo_docs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=45 init_class=1 init_formula=.ORGANIZATION unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $RELATION(REL5) class=1 type=T_OPERATIONS form=ITEM_OPERS_LIST prop=null idname=item_id_s order=999 $ENDRELATION $RELATION(REL7) class=0 type=SIMPLES form=null prop=COMPOSE_LINE_COMMENT idname=null order=null $ENDRELATION $RELATION(REL8) class=0 type=SIMPLES form=null prop=PAYMENT_TYPE idname=null order=null $ENDRELATION $RELATION(REL1) class=0 type=SIMPLES form=null prop=URGENCY_PAYMENT_ID idname=null order=5 $ENDRELATION $RELATION(REL11) class=0 type=PARTNERS form=null prop=FROM_PARTNER_ID idname=null order=1 $ENDRELATION $RELATION(REL12) class=0 type=PARTNERS form=null prop=TO_PARTNER_ID idname=null order=2 $ENDRELATION $RELATION(REL13) class=0 type=PARTNERS form=null prop=OWNER_ID idname=null order=3 $ENDRELATION $RELATION(REL17) class=0 type=PARTNERS form=null prop=UK_ID idname=null order=9 $ENDRELATION $RELATION(REL20) class=0 type=PARTNERS form=null prop=FACT_PARTNER_ID idname=null order=12 $ENDRELATION $RELATION(REL6) class=0 type=ITEMS form=null prop=BANK_ACC_REP_ID idname=null order=4 $ENDRELATION $RELATION(REL3) class=0 type=ITEMS form=null prop=FOUNDATION_ID idname=null order=6 $ENDRELATION $RELATION(REL15) class=0 type=ITEMS form=null prop=PIF_PAY_ID idname=null order=8 $ENDRELATION $RELATION(REL19) class=0 type=ITEMS form=null prop=CANCEL_PAYMT_ID idname=null order=11 $ENDRELATION $RELATION(REL9) class=0 type=BANK_ACCOUNTS form=null prop=FROM_PARTNER_ACC_ID idname=null order=null $ENDRELATION $RELATION(REL10) class=0 type=BANK_ACCOUNTS form=null prop=TO_PARTNER_ACC_ID idname=null order=null $ENDRELATION $RELATION(REL4) class=1 type=ACTIONS_HISTORY form=UO_ACTIONS_HISTORY_LIST prop=null idname=null order=998 $ENDRELATION $RELATION(REL18) class=0 type=RATE_PLACES form=null prop=PLACE_ID idname=null order=10 $ENDRELATION $RELATION(REL14) class=0 type=TARGET_PURPOSES form=null prop=PURPOSE_ID idname=null order=7 $ENDRELATION $RELATION(REL2) class=1 type=CANCELLING_PIF_PAYMENT form=CANCELLING_PAYMENT_LIST prop=null idname=depo_doc_id_s order=1000 $ENDRELATION $RELATION(REL16) class=1 type=SD_INDOC2DOC form=FORM2 prop=null idname=doc_id_s order=100 $ENDRELATION $FORM(D_PAYDOCS_OUT_VIEW) name=Просмотр class=5 filter=null target_state= uo=uo_edit dw=d_sd_paydocs_out_view procedure=ap_10000000000085817 patterns=GENERIC_VIEW_ITEM user_define=1 isvisible=0 istab=1 posx=0 posy=0 width=3182 height=2400 proc_text=$TEXT(16182994) create procedure dbo.%PROC% @sid varchar(30) = null, @bank_acc_rep_id_s varchar(30) = null as declare @id numeric, @action_id numeric, @user_id numeric, @state_id numeric, @type_id numeric begin select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_VIEW_ITEM if @id = -1 begin begin tran .GET_PROPS .CHECK_INSERT .INIT_VARS(B) if isnull(@bank_acc_rep_id_s,'')<>'' select @bank_acc_rep_id=convert(numeric, @bank_acc_rep_id_s) .INSERT_ITEMS .INSERT --.INSERT_INFO4OPER(@id) commit tran end .INSERT_INFO4OPER(@id) .VIEW_ITEM end $ENDTEXT(16182994) $ACTION2RELATION(REL19.ITEM_NAME) relation=REL19 where=null prop=ITEM_NAME order=3 alias=cancel_paymt_name $ENDACTION2RELATION $ACTION2RELATION(REL6.ITEM_NAME) relation=REL6 where=null prop=ITEM_NAME order=2 alias=bank_acc_rep_name $ENDACTION2RELATION $ACTION2RELATION(REL11.PARTNER_CODE) relation=REL11 where=null prop=PARTNER_CODE order=1 alias=from_partner_code $ENDACTION2RELATION $ACTION2RELATION(REL11.PARTNER_SHORT_NAME) relation=REL11 where=null prop=PARTNER_SHORT_NAME order=4 alias=from_partner_short_name $ENDACTION2RELATION $ACTION2RELATION(REL12.PARTNER_CODE) relation=REL12 where=null prop=PARTNER_CODE order=1 alias=to_partner_code $ENDACTION2RELATION $ACTION2RELATION(REL12.PARTNER_SHORT_NAME) relation=REL12 where=null prop=PARTNER_SHORT_NAME order=4 alias=to_partner_short_name $ENDACTION2RELATION $ACTION2RELATION(REL13.PARTNER_NAME) relation=REL13 where=null prop=PARTNER_NAME order=2 alias=fund_name $ENDACTION2RELATION $ACTION2RELATION(REL14.CODE) relation=REL14 where=null prop=CODE order=1 alias=pay_purpose_code $ENDACTION2RELATION $ACTION2RELATION(REL14.NAME) relation=REL14 where=null prop=NAME order=2 alias=pay_purpose_name $ENDACTION2RELATION $ACTION2RELATION(REL15.ITEM_NAME) relation=REL15 where=null prop=ITEM_NAME order=3 alias=pif_pay_name $ENDACTION2RELATION $ACTION2RELATION(REL17.PARTNER_SHORT_NAME) relation=REL17 where=null prop=PARTNER_SHORT_NAME order=10 alias=uk_short_name $ENDACTION2RELATION $ACTION2RELATION(REL18.PLACE_NAME) relation=REL18 where=null prop=PLACE_NAME order=3 alias=place_name $ENDACTION2RELATION $ACTION2RELATION(REL20.PARTNER_SHORT_NAME) relation=REL20 where=null prop=PARTNER_SHORT_NAME order=10 alias=fact_partner_short_name $ENDACTION2RELATION $BIND(BIND1) type=PAYS2ITEMS action=D_PAYS2ITEMS_LIST_ITEMS class=1 order=10 idname=paydoc_id_s $ENDBIND $BIND(BIND2) type=SD_INFO4OPER action=FORM_ED class=1 order=5 idname=sid $ENDBIND $FILTER(BANK_ACC_REP_ID) type=11 label=Выписка из банка prop=BANK_ACC_REP_ID arg_code=null arg_type=null arg_length=null arg_prec=null arg_scale=null $ENDFILTER $ENDFORM $ACTION(ACTION1) name=Не принят банком class=9 form=null target_state=NOT_ACPT procedure=ap_10000000000085828 patterns=GENERIC_MOVE user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16182996) create procedure dbo.%PROC% @sid varchar(30) = null as declare @action_id numeric, @id numeric, @user_id numeric, @state_id numeric, @new_state_id numeric, @type_id numeric begin tran select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_UPDATE if not exists(select 1 from td_foundation_docs,t_items,t_states where td_foundation_docs.depo_doc_id=@id and t_items.id=@id and t_items.state_id=t_states.id and t_states.class_id=0) begin .EXIT_MESSAGE('Введите причину отказа банком') end .UPDATE_STATE .ACTION_HISTORY /*-------Проводки ----------*/ commit tran $ENDTEXT(16182996) $ENDACTION $ACTION(ACTION3) name=Добавить class=1 form=D_PAYDOCS_OUT_VIEW target_state=ED procedure=ap_10000000000085829 patterns=GENERIC_INSERT user_define=1 isvisible=0 istab=1 posx=0 posy=0 width=3301 height=2536 proc_text=$TEXT(16182996) create procedure dbo.%PROC% @sid varchar(30) = null, .ARGLIST as declare @action_id numeric, @id numeric, @user_id numeric, @state_id numeric, @type_id numeric, @item_name varchar(30), @new_state_id numeric begin tran select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_UPDATE .ARGCONVERT .INIT_VARS if @bank_acc_rep_id is not null and .ITEM_STATE_CODE(@bank_acc_rep_id) not in ('CTR') .EXIT_MESSAGE('Выписка должна быть Подтверждена!') if @bank_acc_rep_id is not null and @from_partner_acc_id is null select @from_partner_acc_id=a.id, @from_partner_bank_bic=a.bik, @from_partner_bank_name=a.bank_name, @from_partner_acc_no=a.bank_account_no, @from_partner_corr_acc_no=a.corr_account from t_bank_accounts a, td_bank_account_report where a.id=td_bank_account_report.bank_account_id and td_bank_account_report.id=@bank_acc_rep_id if @from_partner_acc_id is null .EXIT_MESSAGE('Не задан расчетный счет отправителя') --if @from_partner_id is null select @from_partner_id=p.id, @from_partner_name=p.partner_name, @from_partner_inn=p.j_inn from t_partners p, t_bank_accounts where p.id=t_bank_accounts.partner_id and t_bank_accounts.id=@from_partner_acc_id if @from_partner_acc_id=@to_partner_acc_id and @from_partner_acc_id is not null and @to_partner_acc_id is not null .EXIT_MESSAGE('Расчетные счета отправителя и получателя не должны совпадать') --------------------- declare @code_perpose int select @code_perpose = code from t_purposes where id = @purpose_id if @code_perpose = 4030 begin if (@cancel_paymt_id is not null) and (exists(select 1 from t_paydocs,td_depo_docs where t_paydocs.cancel_paymt_id = @cancel_paymt_id and t_paydocs.id=td_depo_docs.id and td_depo_docs.owner_id = @owner_id and (.ITEMS_EXISTS_BY_TYPE_STATE(t_paydocs.id,'SD_PAYBANK_OUT','PERF')))) .EXIT_MESSAGE('Исходящий платеж по возврату для данного платежа уже существует в статусе Проведен') if @from_partner_id <> (select to_partner_id from t_paydocs where id = @cancel_paymt_id) .EXIT_MESSAGE('Отправитель должен быть равен получателю из возвращаемой заявки') if @to_partner_id <> (select from_partner_id from t_paydocs where id = @cancel_paymt_id) .EXIT_MESSAGE('Получатель должен быть равен отправителю из возвращаемой заявки') if @from_partner_acc_id <> (select to_partner_acc_id from t_paydocs where id = @cancel_paymt_id) .EXIT_MESSAGE('Счет отправителя должен быть равен счету получателя из возвращаемой заявки') if @to_partner_acc_id <> (select from_partner_acc_id from t_paydocs where id = @cancel_paymt_id) .EXIT_MESSAGE('Счет получателя должен быть равен счету отправителя из возвращаемой заявки') end --------------------- .TEST_UNIQUE select @tax_nds_sum=round((isnull(@tax_nds_rate,0)*isnull(@doc_sum,0)/(100+isnull(@tax_nds_rate,0))),2) .MONEY2STR(@cur_id,@doc_sum,@sum_str) .UPDATE_ITEMS .UPDATE .UPDATE_STATE .RELGEN .ACTION_HISTORY select sid = convert(varchar, @id) commit tran $ENDTEXT(16182996) $BIND(BIND1) type=SD_INFO4OPER action=ACTION_UPDATE class=1 order=10 idname=sid $ENDBIND $ENDACTION $ACTION(ACTION4) name=Изменить class=2 form=D_PAYDOCS_OUT_VIEW target_state=null procedure=ap_10000000000085830 patterns=GENERIC_UPDATE user_define=1 isvisible=0 istab=1 posx=0 posy=0 width=3191 height=2316 proc_text=$TEXT(16182996) create procedure dbo.%PROC% @sid varchar(30) = null, .ARGLIST as declare @action_id numeric, @id numeric, @user_id numeric, @state_id numeric, @type_id numeric, @item_name varchar(100), @new_state_id numeric begin tran select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_UPDATE .ARGCONVERT if @bank_acc_rep_id is not null and @from_partner_acc_id is null select @from_partner_acc_id=a.id, @from_partner_bank_bic=a.bik, @from_partner_bank_name=a.bank_name, @from_partner_acc_no=a.bank_account_no, @from_partner_corr_acc_no=a.corr_account from t_bank_accounts a, td_bank_account_report where a.id=td_bank_account_report.bank_account_id and td_bank_account_report.id=@bank_acc_rep_id if @from_partner_acc_id is null .EXIT_MESSAGE('Не задан расчетный счет отправителя') --if @from_partner_id is null select @from_partner_id=p.id, @from_partner_name=p.partner_name, @from_partner_inn=p.j_inn from t_partners p, t_bank_accounts where p.id=t_bank_accounts.partner_id and t_bank_accounts.id=@from_partner_acc_id if @from_partner_acc_id=@to_partner_acc_id and @from_partner_acc_id is not null and @to_partner_acc_id is not null .EXIT_MESSAGE('Расчетные счета отправителя и получателя не должны совпадать') .TEST_UNIQUE select @tax_nds_sum=round((isnull(@tax_nds_rate,0)*isnull(@doc_sum,0)/(100+isnull(@tax_nds_rate,0))),2) .MONEY2STR(@cur_id,@doc_sum,@sum_str) .UPDATE_ITEMS .UPDATE .RELGEN .UPDATE_STATE .ACTION_HISTORY commit tran $ENDTEXT(16182996) $BIND(BIND1) type=SD_INFO4OPER action=ACTION_UPDATE class=1 order=10 idname=sid $ENDBIND $ENDACTION $ACTION(ACTION6) name=Удалить class=9 form=null target_state=DEL procedure=ap_10000000000085831 patterns=GENERIC_MOVE user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16182996) create procedure dbo.%PROC% @sid varchar(30) = null as declare @action_id numeric, @id numeric, @user_id numeric, @state_id numeric, @new_state_id numeric, @type_id numeric begin tran select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_UPDATE .UPDATE_STATE .ACTION_HISTORY /*-------Проводки ----------*/ commit tran $ENDTEXT(16182996) $ENDACTION $ACTION(OPS) name=Провести class=9 form=null target_state=PERF procedure=ap_10000000000085832 patterns=GENERIC_MOVE user_define=1 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16182996) create procedure dbo.%PROC% @sid varchar(30) = null, @report_sid varchar(30) = null, @report_state int = 0 out as declare @action_id numeric, @id numeric, @user_id numeric, @state_id numeric, @new_state_id numeric, @type_id numeric begin tran select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_UPDATE .GET_PROPS declare @cur_code varchar(50) select @cur_code = .CUR_CODE(@cur_id) -- Lappo_da 02.05.06 declare @ms varchar(255) select @ms=' - '+item_name from t_items where id=@id declare @purpose_name varchar(255) select @pay_perpose=code, @purpose_name=name from t_purposes where id=@purpose_id if @from_partner_acc_id=@to_partner_acc_id and @from_partner_acc_id is not null and @to_partner_acc_id is not null .EXIT_MESSAGE_PARM('Расчетные счета отправителя и получателя не должны совпадать',@ms) --- Добавлена проверка на соответствия Пайщика и суммы при ЦН 4015 ---- if @pay_perpose in (4015,4030) begin if @cancel_paymt_id is null .EXIT_MESSAGE_PARM('Не задан вх.платеж, по которому производится возврат',@ms) if not (.ITEMS_EXISTS_BY_TYPE_STATE(@cancel_paymt_id,'SD_PAYBANK_IN','PERF')) and not (.ITEMS_EXISTS_BY_TYPE_STATE(@cancel_paymt_id,'SD_PAYBANK_IN','UNDEF')) .EXIT_MESSAGE('Отказной платеж не находиться в статусе Проведен или Проведен как не опознанный') if (select from_partner_id from t_paydocs where id = @cancel_paymt_id) <> @to_partner_id .EXIT_MESSAGE('Получатель не совпадает с Отправителем в отказном платеже') if (select doc_sum from t_paydocs where id = @cancel_paymt_id) <> @doc_sum .EXIT_MESSAGE('Сумма в платеже не совпадает с суммой в отказном платеже') end -------------------- if @bank_acc_rep_id is not null begin if upper(.ITEM_STATE_CODE(@bank_acc_rep_id)) = 'ED' .EXIT_MESSAGE_PARM('Выписка из банка должна быть подтверждена',@ms) if (select bank_account_id from td_bank_account_report where id=@bank_acc_rep_id)<>@from_partner_acc_id .EXIT_MESSAGE_PARM('В выписке из банка и в платеже указаны разные расчетные счета',@ms) end /*-------Проводки ----------*/ --select @complete_date=isnull(@complete_date,(.OPERDAY)) .GET_SD_OPER_DATE(@complete_date,@id) select @tax_nds_sum=round((isnull(@tax_nds_rate,0)*isnull(@doc_sum,0)/(100.0+isnull(@tax_nds_rate,0))),2) .MONEY2STR(@cur_id,@doc_sum,@sum_str) .UPDATE .UPDATE_ITEMS .PAYS_COMPLETE_STATE(@id,1) .GET_PROPS declare @doc_name varchar(255) declare @oper_date datetime declare @deb_acc_id numeric declare @cred_acc_id numeric declare @deb_acc_id1 numeric declare @cred_acc_id1 numeric declare @doc_sum_rur money, @cur_price money select @cur_price = t_rates.rate_value from t_rates where t_rates.cur_id = @cur_id and t_rates.rate_date = (select max(t_rates.rate_date) from t_rates where t_rates.cur_id = @cur_id and t_rates.rate_date <= @doc_date and .ITEMS_EXISTS(t_rates.id)) and .ITEMS_EXISTS(t_rates.id) select @doc_sum_rur = round(@doc_sum * @cur_price,2) -- lappo_da 02.05.06 .NAME_VAR(@fund_type_code) .ID_VAR(@asset_manager_id) select @oper_date=.OPERDAY select @fund_type_code = upper(.ITEM_TYPE_CODE(@owner_id)) select @doc_name = @purpose_name + ':' + .ITEM_NAME(@id) + ':' + @perpose_str declare @ost_sum money declare @fund_plan_id numeric declare @stock_account_id numeric declare @mess varchar(255) declare @pay_rec_sid varchar(30) declare @pay_rec_code varchar(30) /* Проводки для ПИФ */ if @fund_type_code = 'PIF_FUND' begin select @fund_plan_id = .ARG_PLAN('PIF_ACCOUNT') if @cur_code = 'RUR' select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'51') else select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'52') if @pay_perpose = 4003 /* Перечисление надбавки агенту или УК */ select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.11') else if @pay_perpose in ( 4004 /* 4004 - Выплата цены выкупа пая (НИКОЙЛ) */, 9999 /* 9999 - При импорте платежей по выкупу паев (НИКОЙЛ)*/----- ) begin select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.4.2') if (@foundation_id is null) .EXIT_MESSAGE_PARM('Платеж не сквитован с заявкой',@ms) select @pay_rec_code = upper(t_states.state_code) from t_states, t_items where t_items.id = @foundation_id and t_items.state_id = t_states.id if @pay_rec_code not in ('CHECK', 'CHECK2') begin select @mess = 'Заявка не находится в статусе "Сверена" или "Сверена повторно"' .EXIT_MESSAGE_PARM(@mess,@ms) end /* Проверка баланса по заявке */ .TRANSACTION_SAVE select @stock_account_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.4.2') .TOTALS_QUERY_SUB(@owner_id,@fund_plan_id,@oper_date,'01/01/49',@stock_account_id,'partners',@to_partner_id,'pifdocs',@foundation_id,N,N,L,N,N,N,Y) select @ost_sum = isnull((select sum(#tmp_oss.saldo_ce) from #tmp_oss), 0) .DROP_QUERY_TABLES(#tmp_oss) .TRANSACTION_RESTORE if @ost_sum <> @doc_sum begin select @mess = 'Задолженность по заявке равна ' + convert(varchar, @ost_sum) .EXIT_MESSAGE_PARM(@mess,@ms) end /* Проверка платежей */ if (select count(*) from t_paydocs, td_depo_docs, t_items, t_types, t_states where t_paydocs.foundation_id = @foundation_id and t_paydocs.id = td_depo_docs.id and td_depo_docs.owner_id = @owner_id and t_paydocs.id = t_items.id and t_paydocs.complete_date > @complete_date and t_items.type_id = t_types.id and upper(t_types.type_code) in ('SD_PAYBANK_IN', 'SD_PAYBANK_OUT') and t_items.state_id = t_states.id and upper(t_states.state_code) in ('PERF')) >0 begin /* Есть платежи */ select @mess = 'По заявке N ' + isnull(@foundation_no, '') + ' есть платежи с датой больше текущей' .EXIT_MESSAGE_PARM(@mess,@ms) end end else if @pay_perpose = 4005 /* Уплата подоходного налога*/ select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'68.7') else if @pay_perpose = 4006 /* Уплата налога на доходы*/ select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'68.8') else if @pay_perpose = 4007 /* Перечисление денег УК в счет возмещения за выкуп паев */ select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.1') else if @pay_perpose = 4008 /* Перечисление вознаграждения УК */ select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.1') else if @pay_perpose = 4009 /* Перечисление вознаграждения СД */ select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.2') else if @pay_perpose = 4010 /* Перечисление вознаграждения СР */ select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.3') else if @pay_perpose = 2004 /* Основной платеж по Договору покупки ЦБ */ select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.5.2') else if @pay_perpose = 2030 /* Основной платеж по Договору покупки ЦБ */------ select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.5.3') else if @pay_perpose = 2033 /* на 57-й */------- select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'57') else if @pay_perpose in ( 2013,/* Компенсация расходов по ценным бумагам */ 2014, 2015, 2016, 2017 ) select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.12') else if @pay_perpose = 2018 /* Перечисление денежных средств на депозит (57) */ begin if (@to_partner_acc_id is null) or (.GET_CTRL_COMP_ID(@owner_id) != @to_partner_id) .EXIT_MESSAGE_PARM('Не задан целевой депозитный счет для фонда',@ms) select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'57') end else if @pay_perpose = 4030 /* Возврат платежа */ begin select @deb_acc_id = acc_id from t_oper_list where head_id = (select id from t_operations where item_id = @cancel_paymt_id) and deb_or_cred = -1 select @cred_acc_id = acc_id from t_oper_list where head_id = (select id from t_operations where item_id = @cancel_paymt_id) and deb_or_cred = 1 end else if @pay_perpose = 2028 /* Перечисление денежных средств на депозит (напрямую) */ begin if (@to_partner_acc_id is null) or (.GET_CTRL_COMP_ID(@owner_id) != @to_partner_id) .EXIT_MESSAGE_PARM('Не задан целевой депозитный счет для фонда',@ms) select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'58.2') end else if @pay_perpose = 2019 /* Перечисление денежных средств с депозита (57)*/ begin if (@to_partner_acc_id is null) or (.GET_CTRL_COMP_ID(@owner_id) != @to_partner_id) .EXIT_MESSAGE_PARM('Не задан целевой расчетный счет для фонда',@ms) select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'57') select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'58.2') end else if @pay_perpose in( 2011, /* 2011 Перечисление денежных средств за недвижимость */ 2012 /* 2012 Перечисление денежных средств за прочие активы */ ) select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.13') else if @pay_perpose = 2022 /* Перечисление денежных средств по взаимозачету */ select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.5.5') else if @pay_perpose = 2025 /* Платеж на биржу */ begin if @place_id is null .EXIT_MESSAGE('Не задана площадка') if @to_partner_acc_id is null .EXIT_MESSAGE('Не задан расч.счет брокера') select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.5.4') end else if @pay_perpose = 2032 /* Оплата прочих расходов */------ select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.8') else if @pay_perpose in (103,4016,4017,4018) -- Расчеты с банком, прочие выплаты из резервов----------- begin if @pay_perpose in (103,4016) -- из прочих расходов begin if .GET_CLASS_VALUE_CODE_FOR_ITEM(@owner_id,'PIF_OTHER_RESERVE','IN_SCHA')='NOT_USE' select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'96.2') -- это 86.2 по-новому, т.е. сразу на имущество else select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'89.2') -- это 96.2 по-новому, т.е. из прочих резервов end else select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'89.3') if @pay_perpose in (103,4016) select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.8') if @pay_perpose=4017 -- оценщик select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.17') if @pay_perpose=4018 -- аудитор select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.18') end else if @pay_perpose in (4014,4020) /* 4014 Выплата цены выкупа пая, 4020 - Обмен */ begin if @pif_pay_id is null .EXIT_MESSAGE_PARM('Не указана заявка',@ms) if upper(.ITEM_STATE_CODE(@pif_pay_id)) not in ('WAIT_CRT','CRT_RET') .EXIT_MESSAGE_PARM('Заявка должна быть подтверждена в отчете регистратора, но не оплачена',@ms) if (@pif_pay_id is not null) and ((select pay_owner_id from tp_pif_queries where id=@pif_pay_id) != @to_partner_id) .EXIT_MESSAGE_PARM('Получатель платежа не является пайщиком в заявке',@ms) if (select pay_type_id from tp_pif_queries where id=@pif_pay_id)=2 -- нач.задолженность if (select isnull(payment_sum,0) from tp_pif_queries where id=@pif_pay_id) != @doc_sum .EXIT_MESSAGE_PARM('Сумма платежа не равна задолженности по заявке',@ms) if (select isnull(pay_type_id,1) from tp_pif_queries where id=@pif_pay_id) in (1,3,4) if (select isnull(sum_for_transfer,0) from tp_extract2claim where claim_id=@pif_pay_id) != @doc_sum .EXIT_MESSAGE_PARM('Сумма платежа не равна сумме заявки в отчете регистратора',@ms) if (select count(*) from t_paydocs, td_depo_docs, t_items, t_types, t_states where t_paydocs.pif_pay_id = @pif_pay_id and t_paydocs.id = td_depo_docs.id and td_depo_docs.owner_id = @owner_id and t_paydocs.id = t_items.id and t_paydocs.complete_date > @complete_date and t_items.type_id = t_types.id and upper(t_types.type_code) in ('SD_PAYBANK_IN', 'SD_PAYBANK_OUT') and t_items.state_id = t_states.id and upper(t_states.state_code) in ('PERF')) >0 .EXIT_MESSAGE_PARM('По заявке есть платежи с датой больше текущей',@ms) select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.4.2') if upper(.ITEM_STATE_CODE(@pif_pay_id))='CRT_RET' begin .ITEM_MOVE_STATE(@pif_pay_id,'CRT_NEXT') end else begin .ITEM_MOVE_STATE(@pif_pay_id,'CRT') end update t_paydocs set covered_sum=@doc_sum where id=@id end else if @pay_perpose=4015 /* 4015 возврат по заявкам на размещение */ begin if @cancel_paymt_id is null .EXIT_MESSAGE_PARM('Не задан вх.платеж, по которому производится возврат',@ms) if (@pif_pay_id is not null) and upper(.ITEM_STATE_CODE(@pif_pay_id)) not in ('PROV','CANCEL') .EXIT_MESSAGE_PARM('Заявка должна быть на исполнении или отказана в исполнении',@ms) if (@pif_pay_id is not null) and ((select pay_owner_id from tp_pif_queries where id=@pif_pay_id) != @to_partner_id) .EXIT_MESSAGE_PARM('Получатель платежа не является пайщиком в заявке',@ms) select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.4.1') update t_paydocs set covered_sum=@doc_sum where id=@id end else if @pay_perpose = 2031 /* Перечисление денежных средств на др.расчетный счет */--------- begin if (@to_partner_acc_id is null) or (.GET_CTRL_COMP_ID(@owner_id) != @to_partner_id) or (.GET_CTRL_COMP_ID(@owner_id) != @from_partner_id) .EXIT_MESSAGE_PARM('Должны быть указаны счета УК ПИФ',@ms) if @cur_code = 'RUR' select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'51') else select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'52') end else /* Неизвестное назначение */ begin .EXIT_MESSAGE_PARM('Неизвестное целевое назначение',@ms) end /* OPERATION */ .UPDATE_STATE .ACTION_HISTORY --.OPERATION(@owner_id,@fund_plan_id,@complete_date,@deb_acc_id,@cred_acc_id,@doc_sum,'RUR',@complete_date,0,0,@doc_name,N) .OPERATION(@owner_id,@fund_plan_id,@complete_date,@deb_acc_id,@cred_acc_id,@doc_sum_rur,'RUR',@complete_date,0,0,@doc_name,N,@operation_id,@id,@action_id,@action_history_id,@doc_sum,@doc_sum) -- Lappo_da 03.05.06 /* END OPERATION */ /* SUBC DEB */ if @pay_perpose in ( 4003 /* Перечисление надбавки агенту или УК */, 4007 /* Перечисление денег УК в счет возмещения за выкуп паев */, 4008 /* Перечисление вознаграждения УК */, 4009 /* Перечисление вознаграждения СД */, 4010 /* Перечисление вознаграждения СР */, 2004 /* Основной платеж по Договору покупки ЦБ */, 2013 /* Компенсация расходов по ценным бумагам */, 2014, 2015, 2016, 2017, 2011 /* 2011 Перечисление денежных средств за недвижимость */, 2012 /* 2012 Перечисление денежных средств за прочие активы */, 2022 /* Перечисление денежных средств по взаимозачету */, 2032, 2030 ) begin .UPDATE_SUBC(D,'partners',@to_partner_id) end else if @pay_perpose in ( 2025 /* Платеж на биржу */ ) begin .UPDATE_SUBC(D,'partners',@to_partner_id) .UPDATE_SUBC(D,'exchange',@place_id) .UPDATE_SUBC(D,'bank_account',@to_partner_acc_id) end else if @pay_perpose in ( 4004 /* 4004 - Выплата цены выкупа пая */, 9999 /* 9999 - При импорте платежей по выкупу паев */ ) begin .UPDATE_SUBC(D,'partners',@to_partner_id) .UPDATE_SUBC(D,'pifdocs',@foundation_id) end else if @pay_perpose in (4014,4020) /* 4014 - Выплата цены выкупа пая, 4020 - Обмен */ begin .UPDATE_SUBC(D,'partners',@to_partner_id) .UPDATE_SUBC(D,'pifdocs',@pif_pay_id) end else if @pay_perpose=4015 /* 4015 - возврат по заявкам на размещение (ИРКОЛ) */ begin .UPDATE_SUBC(D,'partners',@to_partner_id) .UPDATE_SUBC(D,'paydocs',@cancel_paymt_id) end else if @pay_perpose in ( 2018 /* Перечисление денежных средств на счет банковского депозита (57) */, 2019 /* Перечисление денежных средств со счета банковского депозита (57) */, 2028 /* Перечисление денежных средств на счет банковского депозита (напрямую) */, 2031 -- на др.р.сч ) begin .UPDATE_SUBC(D,'bank_account',@to_partner_acc_id) end else if @pay_perpose= 2033 -- на 57-й begin .UPDATE_SUBC(D,'bank_account',@from_partner_acc_id) end else if @pay_perpose= 4030 -- Возврат платежа begin declare @id_oper numeric --- id операции declare @id_oper_vozvr numeric --- id операции возвращаемого платежа select @id_oper = id from t_operations where item_id = @id select @id_oper_vozvr = id from t_operations where item_id = @cancel_paymt_id update t_oper_list set subc_eff_num = (select subc_eff_num from t_oper_list where head_id = @id_oper_vozvr and deb_or_cred = -1) where t_oper_list.head_id = @id_oper and t_oper_list.deb_or_cred = 1 update t_oper_list set subc_eff_name = (select subc_eff_name from t_oper_list where head_id = @id_oper_vozvr and deb_or_cred = -1) where t_oper_list.head_id = @id_oper and t_oper_list.deb_or_cred = 1 update t_oper_list set subc_eff_num = (select subc_eff_num from t_oper_list where head_id = @id_oper_vozvr and deb_or_cred = 1) where t_oper_list.head_id = @id_oper and t_oper_list.deb_or_cred = -1 update t_oper_list set subc_eff_name =(select subc_eff_name from t_oper_list where head_id = @id_oper_vozvr and deb_or_cred = 1) where t_oper_list.head_id = @id_oper and t_oper_list.deb_or_cred = -1 delete from t_oper_subconto where id in (select id from t_oper_list where head_id = @id_oper) -- Вставка субконто по дебету-- insert into t_oper_subconto select (select id from t_oper_list where head_id = @id_oper and deb_or_cred = 1), subconto_type_id, item_id from t_oper_subconto where id in (select id from t_oper_list where head_id = @id_oper_vozvr and deb_or_cred = -1) -- Вставка субконто по средету-- insert into t_oper_subconto select (select id from t_oper_list where head_id = @id_oper and deb_or_cred = -1), subconto_type_id, item_id from t_oper_subconto where id in (select id from t_oper_list where head_id = @id_oper_vozvr and deb_or_cred = 1) end /* SUBC CRED */ if @pay_perpose in (103,4016,4017,4018) -- Расчеты с банком, прочие выплаты из резервов begin .UPDATE_SUBC(K,'partners',@to_partner_id) end else begin .UPDATE_SUBC(K,'bank_account',@from_partner_acc_id) end /* ADD */ if @pay_perpose in (103,4016,4017,4018) -- Расчеты с банком, прочие выплаты из резервов begin declare @d103_id numeric declare @c103_id numeric if @pay_perpose in (103,4016) select @d103_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.8') if @pay_perpose = 4017 select @d103_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.17') if @pay_perpose = 4018 select @d103_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.18') if @cur_code = 'RUR' select @c103_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'51') else select @c103_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'52') -- .OPERATION(@owner_id,@fund_plan_id,@complete_date,@d103_id,@c103_id,@doc_sum,'RUR',@complete_date,0,0,@doc_name,N) .OPERATION(@owner_id,@fund_plan_id,@complete_date,@d103_id,@c103_id,@doc_sum_rur,'RUR',@complete_date,0,0,@doc_name,N,@operation_id,@id,@action_id,@action_history_id,@doc_sum,@doc_sum) -- Lappo_da 03.05.06 .UPDATE_SUBC(K,'bank_account',@from_partner_acc_id) .UPDATE_SUBC(D,'partners',@to_partner_id) .SUBC_CHECK end else if @pay_perpose in ( 4004 /* 4004 - Выплата цены выкупа пая */, 9999 /* 9999 - При импорте платежей по выкупу паев */ ) begin select @pay_rec_sid = convert(varchar(30), @foundation_id) /*.EXEC_ACTION(@pay_rec_sid,'PIF_QUERIES_BUY','PIF_QUERIES_BUY_COMPLETE')*/ EXECUTE dbo.ap_pay_bye_complete @pay_rec_sid, @report_sid, @report_state out if @report_state <> 0 begin rollback tran return end end /* ADD - bank_comis*/ if isnull(@bank_comis,0)>0 begin declare @d1_id numeric, @c1_id numeric, @d2_id numeric, @c2_id numeric, @bank_id numeric if @cur_code = 'RUR' select @c1_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'51') else select @c1_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'52') select @d1_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.8') select @c2_id = @d1_id if .GET_CLASS_VALUE_CODE_FOR_ITEM(@owner_id,'PIF_OTHER_RESERVE','IN_SCHA')='NOT_USE' select @d2_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'96.2') -- это 86.2 по-новому, т.е. сразу на имущество else select @d2_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'89.2') -- это 96.2 по-новому, т.е. из прочих резервов select @bank_id=(select b.partner_id from t_banks b, t_bank_accounts a where a.id=@from_partner_acc_id and a.bank_id=b.id and .ITEMS_EXISTS(b.partner_id)) if @bank_id is null .EXIT_MESSAGE('В проводки на сумму комиссии - Не задано юр.лицо - банк для счета отправителя') .OPERATION(@owner_id,@fund_plan_id,@complete_date,@d1_id,@c1_id,@bank_comis,'RUR',@complete_date,0,0,'Комиссия за перевод ДС',N) .UPDATE_SUBC(K,'bank_account',@from_partner_acc_id) .UPDATE_SUBC(D,'partners',@bank_id) .SUBC_CHECK .OPERATION(@owner_id,@fund_plan_id,@complete_date,@d2_id,@c2_id,@bank_comis,'RUR',@complete_date,0,0,'Комиссия за перевод ДС',N) .UPDATE_SUBC(K,'partners',@bank_id) .SUBC_CHECK end end /* Конец проводок ПИФ*/ /* ==================== Проводки для НПФ ==================*/ if @fund_type_code = 'NPF_FUND' begin select @asset_manager_id = @from_partner_id select @fund_plan_id = .ARG_PLAN('NPF_ACCOUNT') .ID_VAR(@acc51_id) .ID_VAR(@acc57_id) .ID_VAR(@acc582_id) .ID_VAR(@acc7421_id) .ID_VAR(@acc891_id) .ID_VAR(@acc84_id) .ID_VAR(@d_bank_account_id) .ID_VAR(@d_partners_id) .ID_VAR(@d_partners_cont_id) .ID_VAR(@d_asset_manager_id) .ID_VAR(@d_place_id) .ID_VAR(@c_bank_account_id) .ID_VAR(@c_partners_id) .ID_VAR(@c_partners_cont_id) .ID_VAR(@c_asset_manager_id) .ID_VAR(@c_place_id) if @cur_code = 'RUR' select @acc51_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'51') else select @acc51_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'52') select @acc57_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'57') select @acc582_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'58.2') select @acc7421_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'74.2.1') select @acc891_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'89.1') select @acc84_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'84') if @asset_manager_id = @owner_id -- самостоятельное размещение select @cred_acc_id = @acc51_id else -- размещение через УК*/ select @cred_acc_id = @acc7421_id -- 2004: покупка по сделкам на биржу, 2022: взаимозачет,2030: проч.за ЦБ, 2013: % брокеру, -- 2014: % биржи, 2015: % посреднику, 2016: за перерегистрацию, 2017: % инв.консультантов if @pay_perpose in (2004,2022,2030,2013,2014,2015,2016,2017) begin if @owner_id = @asset_manager_id -- самостоятельно begin select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.4') select @d_partners_id=@to_partner_id select @c_bank_account_id=@from_partner_acc_id end else -- через УК begin select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.5') select @d_partners_id=@asset_manager_id select @d_partners_cont_id=@to_partner_id select @c_asset_manager_id=@asset_manager_id end end -- 2025: на биржу if @pay_perpose in (2025) begin if @place_id is null .EXIT_MESSAGE_PARM('Не задана площадка',@ms) select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'55.1') select @d_partners_id=@to_partner_id select @d_asset_manager_id=@asset_manager_id select @d_place_id=@place_id if @asset_manager_id = @owner_id -- самостоятельно select @c_bank_account_id=@from_partner_acc_id else -- через УК select @c_asset_manager_id=@asset_manager_id end -- 2018: на депозит (через 57) else if @pay_perpose = 2018 begin if @to_partner_acc_id is null .EXIT_MESSAGE_PARM('Не задан целевой депозитный счет',@ms) if (@owner_id != @to_partner_id) and (@owner_id != isnull((select fund_id from t_bank_accounts where id=@to_partner_acc_id),0)) .EXIT_MESSAGE_PARM('Выберите счет получателя - счет ДУ для фонда или счет фонда',@ms) select @deb_acc_id = @acc57_id select @d_bank_account_id=@to_partner_acc_id -- 'asset_manager' - тот, кто отправил if @owner_id = @asset_manager_id -- самостоятельно begin select @d_asset_manager_id=@owner_id select @c_bank_account_id=@from_partner_acc_id end else -- через УК begin select @d_asset_manager_id=@asset_manager_id select @c_asset_manager_id=@asset_manager_id end end -- 2028: на депозит (напрямую) else if @pay_perpose = 2028 begin if @to_partner_acc_id is null .EXIT_MESSAGE_PARM('Не задан целевой депозитный счет',@ms) if (@owner_id != @to_partner_id) and (@owner_id != isnull((select fund_id from t_bank_accounts where id=@to_partner_acc_id),0)) .EXIT_MESSAGE_PARM('Выберите счет получателя - счет ДУ для фонда или счет фонда',@ms) select @deb_acc_id = @acc582_id select @d_bank_account_id=@to_partner_acc_id -- 'asset_manager' - тот, кто отправил if @owner_id = @asset_manager_id -- самостоятельно НПФ begin select @d_asset_manager_id=@owner_id select @c_bank_account_id=@from_partner_acc_id end else -- через УК begin select @d_asset_manager_id=@asset_manager_id select @c_asset_manager_id=@asset_manager_id end end -- 2019: с депозита (через 57) else if @pay_perpose = 2019 begin if @to_partner_acc_id is null .EXIT_MESSAGE_PARM('Не задан целевой расчетный счет',@ms) if (@owner_id != @to_partner_id) and (@owner_id != isnull((select fund_id from t_bank_accounts where id=@to_partner_acc_id),0)) .EXIT_MESSAGE_PARM('Выберите счет получателя - счет ДУ для фонда или счет фонда',@ms) select @deb_acc_id = @acc57_id select @cred_acc_id = @acc582_id -- 'asset_manager' - тот, кому направлено select @d_bank_account_id=@to_partner_acc_id select @d_asset_manager_id=@to_partner_id select @c_asset_manager_id=@to_partner_id select @c_bank_account_id=@from_partner_acc_id end -- 2011: за недвижимость, 2012: за прочие активы else if @pay_perpose in (2011,2012) begin if @owner_id = @asset_manager_id -- самостоятельно begin select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.10') select @d_partners_id=@to_partner_id select @c_bank_account_id=@from_partner_acc_id end else -- через УК begin select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.11') select @d_partners_id=@asset_manager_id select @c_asset_manager_id=@asset_manager_id end end -- 4009: вознаграждение СД else if @pay_perpose = 4009 begin if @asset_manager_id != @owner_id .EXIT_MESSAGE_PARM('Укажите расчетный счет фонда',@ms) select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'91.6') select @d_asset_manager_id=@asset_manager_id select @c_bank_account_id=@from_partner_acc_id select @deb_acc_id1 = @acc84_id select @cred_acc_id1 = @deb_acc_id end -- 4008: вознаграждение УК else if @pay_perpose = 4008 begin select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'91.6') select @d_asset_manager_id=@asset_manager_id if @owner_id = @asset_manager_id -- самостоятельно НПФ select @c_bank_account_id=@from_partner_acc_id else -- через УК select @c_asset_manager_id=@asset_manager_id select @deb_acc_id1 = @acc84_id select @cred_acc_id1 = @deb_acc_id end -- 5002: выплата обязательств по пенсионному обеспечению else if @pay_perpose = 5002 begin if @asset_manager_id != @owner_id .EXIT_MESSAGE_PARM('Укажите расчетный счет фонда',@ms) select @deb_acc_id = @acc891_id select @c_bank_account_id=@from_partner_acc_id end -- 5003: перечисление средств в ДУ (через 57) else if @pay_perpose = 5003 begin if @owner_id != @from_partner_id .EXIT_MESSAGE_PARM('Отправителем должен быть фонд',@ms) if @owner_id != isnull((select fund_id from t_bank_accounts where id=@to_partner_acc_id),0) .EXIT_MESSAGE_PARM('Получателем должен быть управляющий. Счет получателя - счет ДУ фонда.',@ms) select @deb_acc_id = @acc57_id select @d_bank_account_id=@to_partner_acc_id select @d_asset_manager_id=@to_partner_id select @c_bank_account_id=@from_partner_acc_id end -- 5012: в ДУ (напрямую) else if @pay_perpose = 5012 begin if @owner_id != @from_partner_id .EXIT_MESSAGE_PARM('Отправителем должен быть фонд',@ms) if @owner_id != isnull((select fund_id from t_bank_accounts where id=@to_partner_acc_id),0) .EXIT_MESSAGE_PARM('Получателем должен быть управляющий. Счет получателя - счет ДУ фонда.',@ms) select @deb_acc_id = @acc7421_id select @d_asset_manager_id=@to_partner_id select @c_bank_account_id=@from_partner_acc_id end -- 5004: из ДУ (через 57) else if @pay_perpose = 5004 begin if @owner_id != @to_partner_id .EXIT_MESSAGE_PARM('Получателем должен быть фонд',@ms) if @to_partner_acc_id is null .EXIT_MESSAGE_PARM('Не задан счет получателя',@ms) if @from_partner_id = @owner_id .EXIT_MESSAGE_PARM('Фонд не может быть отправителем',@ms) select @deb_acc_id = @acc57_id select @d_bank_account_id=@to_partner_acc_id select @d_asset_manager_id=@owner_id select @c_asset_manager_id=@asset_manager_id end -- 5008: между управляющими (через 57) else if @pay_perpose = 5008 begin if @owner_id = @asset_manager_id /* При размещении самостоятельно НПФ*/ .EXIT_MESSAGE_PARM('Отправителем должен быть управляющий',@ms) if @owner_id != isnull((select fund_id from t_bank_accounts where id=@to_partner_acc_id),0) .EXIT_MESSAGE_PARM('Получателем должен быть управляющий. Счет получателя - счет ДУ фонда.',@ms) select @deb_acc_id = @acc57_id select @d_bank_account_id=@to_partner_acc_id select @d_asset_manager_id=@to_partner_id select @c_asset_manager_id=@asset_manager_id end -- 5013: между управляющими (напрямую) else if @pay_perpose = 5013 begin if (@owner_id = @to_partner_id) or (@owner_id = @from_partner_id) .EXIT_MESSAGE_PARM('Фонд не может быть выбран в качестве получателя или отправителя',@ms) select @deb_acc_id = @acc7421_id select @d_asset_manager_id=@to_partner_id select @c_asset_manager_id=@from_partner_id end -- 2032: прочие расходы else if @pay_perpose = 2032 begin select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.8') if @owner_id = @asset_manager_id -- самостоятельно begin select @d_partners_id=@to_partner_id select @d_partners_cont_id=@to_partner_id select @c_bank_account_id=@from_partner_acc_id end else -- через УК begin select @d_partners_id=@asset_manager_id select @d_partners_cont_id=@to_partner_id select @c_asset_manager_id=@asset_manager_id end select @deb_acc_id1 = @acc84_id select @cred_acc_id1 = @deb_acc_id end -- 5009: покрытие расходов Фонда else if @pay_perpose=5009 begin if @asset_manager_id != @owner_id .EXIT_MESSAGE_PARM('Укажите расчетный счет фонда',@ms) select @deb_acc_id = @acc84_id select @d_asset_manager_id=@asset_manager_id select @c_bank_account_id=@from_partner_acc_id end else if @pay_perpose=5010 /* 5010 Перечисление налога*/ begin if @asset_manager_id != @owner_id .EXIT_MESSAGE_PARM('Укажите расчетный счет фонда',@ms) select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'68.7') select @c_bank_account_id=@from_partner_acc_id select @deb_acc_id1 = @acc891_id select @cred_acc_id1 = @deb_acc_id end -- 2031: на другой расч.счет else if @pay_perpose = 2031 begin if @owner_id != @from_partner_id or @owner_id != @to_partner_id or @to_partner_acc_id is null or @from_partner_acc_id is null .EXIT_MESSAGE_PARM('Должны быть указаны счета фонда',@ms) select @deb_acc_id = @acc51_id select @d_bank_account_id=@to_partner_acc_id select @c_bank_account_id=@from_partner_acc_id end -- Аналитика р.счет на 74.2.1 if @deb_acc_id=@acc7421_id begin if @to_partner_acc_id is null or ((select acc_type_id from t_bank_accounts where id=@to_partner_acc_id) not in (10,20)) or ((select acc_purpose_id from t_bank_accounts where id=@to_partner_acc_id) not in (2)) .EXIT_MESSAGE_PARM('Счет получателя должен быть расчетным счетом УК типа ДУ',@ms) select @d_bank_account_id=@to_partner_acc_id end if @cred_acc_id=@acc7421_id begin if @from_partner_acc_id is null or ((select acc_type_id from t_bank_accounts where id=@from_partner_acc_id) not in (10,20)) or ((select acc_purpose_id from t_bank_accounts where id=@from_partner_acc_id) not in (2)) .EXIT_MESSAGE_PARM('Счет отправителя должен быть расчетным счетом УК типа ДУ',@ms) select @c_bank_account_id=@from_partner_acc_id end -- OPERATION .UPDATE_STATE .ACTION_HISTORY --.OPERATION(@owner_id,@fund_plan_id,@complete_date,@deb_acc_id,@cred_acc_id,@doc_sum,'RUR',@complete_date,0,0,@doc_name,N) .OPERATION(@owner_id,@fund_plan_id,@complete_date,@deb_acc_id,@cred_acc_id,@doc_sum_rur,'RUR',@complete_date,0,0,@doc_name,N,@operation_id,@id,@action_id,@action_history_id,@doc_sum,@doc_sum) -- Lappo_da 03.05.06 -- SUBC DEB if @d_bank_account_id is not null begin .UPDATE_SUBC(D,'bank_account',@d_bank_account_id) end if @d_partners_id is not null begin .UPDATE_SUBC(D,'partners',@d_partners_id) end if @d_partners_cont_id is not null begin .UPDATE_SUBC(D,'partners_cont',@d_partners_cont_id) end if @d_asset_manager_id is not null begin .UPDATE_SUBC(D,'asset_manager',@d_asset_manager_id) end if @d_place_id is not null begin .UPDATE_SUBC(D,'exchange',@d_place_id) end -- SUBC CRED if @c_bank_account_id is not null begin .UPDATE_SUBC(K,'bank_account',@c_bank_account_id) end if @c_partners_id is not null begin .UPDATE_SUBC(K,'partners',@c_partners_id) end if @c_partners_cont_id is not null begin .UPDATE_SUBC(K,'partners_cont',@c_partners_cont_id) end if @c_asset_manager_id is not null begin .UPDATE_SUBC(K,'asset_manager',@c_asset_manager_id) end if @c_place_id is not null begin .UPDATE_SUBC(D,'exchange',@c_place_id) end .SUBC_CHECK -- ADD OPERATION - 1 if @pay_perpose in (5010,2032,4008,4009) begin -- .OPERATION(@owner_id,@fund_plan_id,@complete_date,@deb_acc_id1,@cred_acc_id1,@doc_sum,'RUR',@complete_date,0,0,@doc_name,N) .OPERATION(@owner_id,@fund_plan_id,@complete_date,@deb_acc_id1,@cred_acc_id1,@doc_sum_rur,'RUR',@complete_date,0,0,@doc_name,N,@operation_id,@id,@action_id,@action_history_id,@doc_sum,@doc_sum) -- Lappo_da 03.05.06 if @pay_perpose=2032 begin .UPDATE_SUBC(K,'partners',@d_partners_id) .UPDATE_SUBC(K,'partners_cont',@d_partners_cont_id) .UPDATE_SUBC(D,'asset_manager',@asset_manager_id) end if @pay_perpose in (4008,4009) -- сч.91.6 begin .UPDATE_SUBC(K,'asset_manager',@d_asset_manager_id) .UPDATE_SUBC(D,'asset_manager',@d_asset_manager_id) end .SUBC_CHECK end end -- end NPF -- Запись в журнал .ID_VAR(@j_asset_id) select @j_asset_id=@from_partner_acc_id select @doc_sum=@doc_sum+isnull(@bank_comis,0) .SD_ASSET_OPER_ADD(@id,@j_asset_id,@doc_sum,null,@owner_id,@purpose_id,2) if @pay_perpose in (2028, 2031) begin .SD_ASSET_OPER_ADD(@id,@to_partner_acc_id,@doc_sum,null,@owner_id,@purpose_id,1) end if @pay_perpose in (2025) begin select @j_asset_id=isnull(@to_partner_acc_id,@place_id) .SD_ASSET_OPER_ADD(@id,@j_asset_id,@doc_sum,null,@owner_id,@purpose_id,1) end commit tran $ENDTEXT(16182996) $ENDACTION $ACTION(SIG) name=Подписать class=9 form=null target_state=SIGNATURE procedure=ap_sd_paybank_sig patterns=GENERIC_MOVE user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16182996) create procedure dbo.%PROC% @sid varchar(30) = null, @report_sid varchar(30) = null, @report_state int = 0 out as declare @action_id numeric, @id numeric, @user_id numeric, @state_id numeric, @new_state_id numeric, @type_id numeric begin tran select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_UPDATE declare @ms varchar(255) select @ms=' - '+item_name from t_items where id=@id .GET_PROPS /* == FOR Nikoil ONLY declare @rec_id numeric declare @pay2rec_id numeric declare @mess varchar(255) declare @pay_rec_code varchar(30) declare @pay_rec_sid varchar(30) select @pay2rec_id = convert(numeric, @report_sid) /* Отчет */ if @pay2rec_id is not null begin .TYPE_INIT('PIF_PAY2REC_LIST') .TYPE_ASSIGN(op_date,(.OPERDAY)) .TYPE_ASSIGN(pay2rec_id,@pay2rec_id) .TYPE_ASSIGN(pay_id,@id) .TYPE_ASSIGN(rec_id,null) end if @from_partner_id is null if (@pay2rec_id is null) .EXIT_MESSAGE('Не задан отправитель') else begin .TYPE_ASSIGN(op_report,'Не задан отправитель') .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') commit tran select @report_state = -1 return end if @from_partner_acc_id is null if @pay2rec_id is null .EXIT_MESSAGE('Не задан счет отправителя') else begin .TYPE_ASSIGN(op_report,'Не задан счет отправителя') .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') commit tran select @report_state = -1 return end if (@pay_perpose <> 9999) if @to_partner_id is null if @pay2rec_id is null .EXIT_MESSAGE('Не задан получатель') else begin .TYPE_ASSIGN(op_report,'Не задан получатель') .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') commit tran select @report_state = -1 return end if @pay_perpose in (4004,9999) begin /* Квитовка с заявкой */ declare @pos int if @pay_perpose = 9999 select @pos = charindex('по заявке', @perpose_str) if (@pos > 0) begin select @foundation_no = substring(@perpose_str, @pos + 10, 100) select @pos = charindex(' ', @foundation_no) select @foundation_date = convert(datetime, substring(@foundation_no, @pos + 4, 10), 104) select @foundation_no = substring(@foundation_no, 1, @pos - 1) update t_paydocs set foundation_no = @foundation_no, foundation_date = @foundation_date where id = @id end if @foundation_no is null if @pay2rec_id is null .EXIT_MESSAGE('Не задан номер заявки') else begin .TYPE_ASSIGN(op_report,'Не задан номер заявки') .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') commit tran select @report_state = -1 return end select @foundation_id = t_items.id from td_depo_docs, tp_pif_queries, t_items, t_types, t_states where td_depo_docs.owner_id = @owner_id and td_depo_docs.id = tp_pif_queries.id and tp_pif_queries.id = t_items.id and upper(tp_pif_queries.agent_regs_no) = upper(@foundation_no) /* по номеру */ and tp_pif_queries.agent_regs_date = @foundation_date /* по дате */ -- and (tp_pif_queries.total_sum - isnull(tp_pif_queries.tax,0)) = @doc_sum /* по сумме */ -- and tp_pif_queries.pay_owner_id = @to_partner_id /* по плательщику */ and t_items.type_id = t_types.id and upper(t_types.type_code) = 'PIF_QUERIES_BUY' and t_items.state_id = t_states.id and upper(t_states.state_code) in ('PROV', 'PAY_RET') /* В реестре, оплата возвр. */ if @foundation_id is null begin select @mess = 'Заявка N ' + isnull(@foundation_no, '') + ' не найдена' if @pay2rec_id is null .EXIT_MESSAGE(@mess) else begin .TYPE_ASSIGN(op_report,@mess) .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') commit tran select @report_state = -1 return end end if @pay2rec_id is NOT null begin .TYPE_ASSIGN(rec_id,@foundation_id) end /* проверка владельца */ if @to_partner_id is null begin select @to_partner_id = tp_pif_queries.pay_owner_id from tp_pif_queries where tp_pif_queries.id = @foundation_id /* Обновление плательщика */ update t_paydocs set to_partner_id = @to_partner_id where id = @id end else begin if NOT exists(select 1 from tp_pif_queries where tp_pif_queries.id = @foundation_id and tp_pif_queries.pay_owner_id = @to_partner_id) begin select @mess = 'В платеже по заявке N ' + isnull(@foundation_no, '') + ' указан неверный плательщик' if @pay2rec_id is null .EXIT_MESSAGE(@mess) else begin .TYPE_ASSIGN(op_report,@mess) .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') commit tran select @report_state = -1 return end end end /* проверка суммы */ if NOT exists(select 1 from tp_pif_queries where tp_pif_queries.id = @foundation_id and (tp_pif_queries.payment_sum - isnull(tp_pif_queries.tax,0)) = @doc_sum) begin select @mess = 'В платеже по заявке N ' + isnull(@foundation_no, '') + ', неверная сумма' if @pay2rec_id is null .EXIT_MESSAGE(@mess) else begin .TYPE_ASSIGN(op_report,@mess) .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') commit tran select @report_state = -1 return end end /* проверка реквизитов */ if NOT exists(select 1 from t_bank_accounts where t_bank_accounts.id = @foundation_id and isnull(upper(t_bank_accounts.bik),'') = isnull(upper(@to_partner_bank_bic),'')) begin select @mess = 'В платеже по заявке N ' + isnull(@foundation_no, '') + ', неверный БИК' if @pay2rec_id is null .EXIT_MESSAGE(@mess) else begin .TYPE_ASSIGN(op_report,@mess) .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') commit tran select @report_state = -1 return end end if NOT exists(select 1 from t_bank_accounts where t_bank_accounts.id = @foundation_id and isnull(upper(t_bank_accounts.bank_name),'') = isnull(upper(@to_partner_bank_name),'')) begin select @mess = 'В платеже по заявке N ' + isnull(@foundation_no, '') + ', неверное наименование банка' if @pay2rec_id is null .EXIT_MESSAGE(@mess) else begin .TYPE_ASSIGN(op_report,@mess) .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') commit tran select @report_state = -1 return end end if NOT exists(select 1 from t_bank_accounts where t_bank_accounts.id = @foundation_id and isnull(upper(t_bank_accounts.corr_account),'') = isnull(upper(@to_partner_corr_acc_no),'')) begin select @mess = 'В платеже по заявке N ' + isnull(@foundation_no, '') + ', неверный корр. счет банка' if @pay2rec_id is null .EXIT_MESSAGE(@mess) else begin .TYPE_ASSIGN(op_report,@mess) .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') commit tran select @report_state = -1 return end end if NOT exists(select 1 from t_bank_accounts where t_bank_accounts.id = @foundation_id and isnull(upper(t_bank_accounts.bank_account_no),'') = isnull(upper(@to_partner_acc_no),'')) begin select @mess = 'В платеже по заявке N ' + isnull(@foundation_no, '') + ', неверный расчетный счет' if @pay2rec_id is null .EXIT_MESSAGE(@mess) else begin .TYPE_ASSIGN(op_report,@mess) .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') commit tran select @report_state = -1 return end end select @pay_rec_sid = convert(varchar(30), @foundation_id) /* Проведение заявки */ EXECUTE dbo.ap_pay_check_move @pay_rec_sid, @report_sid, @report_state out if @report_state <> 0 begin rollback tran return end /* Обновление ссылки */ update t_paydocs set foundation_id = @foundation_id where id = @id /* Вставка отчета */ if @pay2rec_id is not null begin .TYPE_ASSIGN(op_report,'Заявка сверена с платежом') .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') end end /* END 4004 */ select @report_state = 0 */ -- Запись в журнал .ID_VAR(@j_asset_id) select @j_asset_id=@from_partner_acc_id select @doc_sum=@doc_sum+isnull(@bank_comis,0) .SD_ASSENT_ADD(@id,@j_asset_id,@doc_sum,null,@owner_id,@purpose_id) /* убрано 15.02.05, т.к. говорят, что запись о согласии д.б.одна, касающаяся того счета, с которого уходят деньги if @pay_perpose in (2028, 2031) begin .SD_ASSENT_ADD(@id,@to_partner_acc_id,@doc_sum,null,@owner_id,@purpose_id) end */ .UPDATE_STATE .ACTION_HISTORY commit tran $ENDTEXT(16182996) $ENDACTION $ACTION(SIG_RET) name=На редактирование class=9 form=null target_state=ED procedure=ap_sd_paybank_ret patterns=GENERIC_MOVE user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16182996) create procedure dbo.%PROC% @sid varchar(30) = null, @report_sid varchar(30) = null, @report_state int = 0 out as declare @action_id numeric, @id numeric, @user_id numeric, @state_id numeric, @new_state_id numeric, @type_id numeric begin tran select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_UPDATE .GET_PROPS declare @ms varchar(255) select @ms=' - '+item_name from t_items where id=@id declare @old_state_code varchar(30) select @old_state_code = upper(state_code) from t_items, t_states where t_items.id=@id and t_items.state_id = t_states.id --================================================================================== -- Документ связан с исполненным обязательством if exists(select 1 from t_pays2items p, .ACTUAL_TABLES where p.paydoc_id = @id and upper(t_states.state_code)='PROT' .ACTUAL_WHERE(p.id)) .EXIT_MESSAGE_PARM('Платежный документ связан с исполненным обязательством',@ms) -- перевод всех привязок к плат. документу в статус Удален .FOR_DOCS(N,'pays2items',ALL,C,'t_pays2items.id = t_items100.id and t_pays2items.paydoc_id=@id','t_pays2items') if upper(@for_state_code1) = "CRT" begin declare @for_id1_s varchar(30) select @for_id1_s = convert(varchar,@for_id1) .EXEC_ACTION(@for_id1_s,'pays2items','delete_pays2items',Y) end .END_FOR_DOCS if @pay_perpose in (4014,4020) and @old_state_code='PERF'/* Выплата цены выкупа пая */ begin if upper(.ITEM_STATE_CODE(@pif_pay_id)) not in ('CRT','CRT_NEXT') .EXIT_MESSAGE_PARM('Заявка должна быть исполнена',@ms) if (select count(*) from t_paydocs, td_depo_docs, t_items, t_types, t_states where t_paydocs.pif_pay_id = @pif_pay_id and t_paydocs.id = td_depo_docs.id and td_depo_docs.owner_id = @owner_id and t_paydocs.id = t_items.id and t_paydocs.complete_date > @complete_date and t_items.type_id = t_types.id and upper(t_types.type_code) in ('SD_PAYBANK_IN', 'SD_PAYBANK_OUT') and t_items.state_id = t_states.id and upper(t_states.state_code) in ('PERF')) >0 .EXIT_MESSAGE_PARM('По заявке есть платежи с датой больше текущей',@ms) if upper(.ITEM_STATE_CODE(@pif_pay_id)) = 'CRT' begin .ITEM_MOVE_STATE(@pif_pay_id,'WAIT_CRT') end else begin .ITEM_MOVE_STATE(@pif_pay_id,'CRT_RET') end update t_paydocs set covered_sum=null where id=@id end --================================================================================= /* == NIKOIL only declare @foundation_id_s varchar(30) declare @rec_state_code varchar(30) declare @mess varchar(255) declare @pay2rec_id numeric select @pay2rec_id = convert(numeric, @report_sid) if @pay2rec_id is not null begin .TYPE_INIT('PIF_PAY2REC_LIST') .TYPE_ASSIGN(op_date,(.OPERDAY)) .TYPE_ASSIGN(pay2rec_id,@pay2rec_id) .TYPE_ASSIGN(pay_id,@id) .TYPE_ASSIGN(rec_id,null) end if @pay_perpose in (4004,9999) -- заявка на выкуп (НИКОЙЛ) begin if @foundation_id is not null begin select @rec_state_code = (select upper(state_code) from t_states, t_items where t_items.id = @foundation_id and t_items.state_id = t_states.id) if @old_state_code = upper('SIGNATURE') begin if @rec_state_code not in ('CHECK', 'CHECK2') if @pay2rec_id is null .EXIT_MESSAGE_PARM('Заявка не находится в статусе "Сверена с платежом" или "Сверена повторно"',@ms) else begin .TYPE_ASSIGN(op_report,'Заявка не находится в статусе "Сверена с платежом" или "Сверена повторно"') .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') commit tran select @report_state = -1 return end end else if @old_state_code = upper('PERF') begin if @rec_state_code <> upper('COMPLETE') if @pay2rec_id is null .EXIT_MESSAGE_PARM('Заявка не находится в статусе "Оплачена"',@ms) else begin .TYPE_ASSIGN(op_report,'Заявка не находится в статусе "Оплачена"') .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') commit tran select @report_state = -1 return end end if @old_state_code = upper('PERF') begin if (select count(*) from t_paydocs, td_depo_docs, t_items, t_types, t_states where t_paydocs.foundation_id = @foundation_id and t_paydocs.id = td_depo_docs.id and td_depo_docs.owner_id = @owner_id and t_paydocs.id = t_items.id and t_paydocs.complete_date > @complete_date and t_items.type_id = t_types.id and upper(t_types.type_code) in ('SD_PAYBANK_IN', 'SD_PAYBANK_OUT') and t_items.state_id = t_states.id and upper(t_states.state_code) in ('PERF')) >0 begin select @mess = 'По заявке N ' + isnull(@foundation_no, '') + ' есть платежи с датой больше текущей' if @pay2rec_id is null .EXIT_MESSAGE_PARM(@mess,@ms) else begin .TYPE_ASSIGN(op_report,@mess) .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') commit tran select @report_state = -1 return end end end update t_paydocs set foundation_id = null where id = @id end end */ .UPDATE_STATE .ACTION_HISTORY /* == NIKOIL only if @pay_perpose in (4004,9999) begin /* Возврат заявки */ if @foundation_id is not null begin select @rec_state_code = (select upper(state_code) from t_states, t_items where t_items.id = @foundation_id and t_items.state_id = t_states.id) if @old_state_code = upper('SIGNATURE') begin if @rec_state_code in ('CHECK', 'CHECK2') begin select @foundation_id_s = convert(varchar(30), @foundation_id) .EXEC_ACTION(@foundation_id_s,'PIF_QUERIES_BUY','PAY_CHECK_RET') end end else if @old_state_code = upper('PERF') begin if @rec_state_code = upper('COMPLETE') begin select @foundation_id_s = convert(varchar(30), @foundation_id) .EXEC_ACTION(@foundation_id_s,'PIF_QUERIES_BUY','PIF_QUERIES_BUY_RET') end end end end */ .PAYS_COMPLETE_STATE(@id,0) .OPERS_ROLL(ALL) /* == NIKOIL only if @pay2rec_id is not null begin .TYPE_ASSIGN(op_report,'Платеж возвращен на редактирование') .TYPE_INSERT('PIF_PAY2REC_LIST','CRT') end */ .SD_ASSENT_DEL(@id) .SD_ASSET_OPER_DEL(@id) commit tran $ENDTEXT(16182996) $ENDACTION $STATE2ACTION(ED.ACTION1) state=ED action=ACTION1 $ENDSTATE2ACTION $STATE2ACTION(ED.ACTION4) state=ED action=ACTION4 $ENDSTATE2ACTION $STATE2ACTION(ED.ACTION6) state=ED action=ACTION6 $ENDSTATE2ACTION $STATE2ACTION(ED.D_PAYDOCS_OUT_VIEW) state=ED action=D_PAYDOCS_OUT_VIEW $ENDSTATE2ACTION $STATE2ACTION(ED.SIG) state=ED action=SIG $ENDSTATE2ACTION $STATE2ACTION(NEW.ACTION3) state=NEW action=ACTION3 $ENDSTATE2ACTION $STATE2ACTION(NOT_ACPT.D_PAYDOCS_OUT_VIEW) state=NOT_ACPT action=D_PAYDOCS_OUT_VIEW $ENDSTATE2ACTION $STATE2ACTION(NOT_ACPT.SIG_RET) state=NOT_ACPT action=SIG_RET $ENDSTATE2ACTION $STATE2ACTION(NOT_CHECK.ACTION4) state=NOT_CHECK action=ACTION4 $ENDSTATE2ACTION $STATE2ACTION(NOT_CHECK.ACTION6) state=NOT_CHECK action=ACTION6 $ENDSTATE2ACTION $STATE2ACTION(NOT_CHECK.D_PAYDOCS_OUT_VIEW) state=NOT_CHECK action=D_PAYDOCS_OUT_VIEW $ENDSTATE2ACTION $STATE2ACTION(PERF.D_PAYDOCS_OUT_VIEW) state=PERF action=D_PAYDOCS_OUT_VIEW $ENDSTATE2ACTION $STATE2ACTION(PERF.SIG_RET) state=PERF action=SIG_RET $ENDSTATE2ACTION $STATE2ACTION(SIGNATURE.ACTION4) state=SIGNATURE action=ACTION4 $ENDSTATE2ACTION $STATE2ACTION(SIGNATURE.D_PAYDOCS_OUT_VIEW) state=SIGNATURE action=D_PAYDOCS_OUT_VIEW $ENDSTATE2ACTION $STATE2ACTION(SIGNATURE.OPS) state=SIGNATURE action=OPS $ENDSTATE2ACTION $STATE2ACTION(SIGNATURE.SIG_RET) state=SIGNATURE action=SIG_RET $ENDSTATE2ACTION $STATE2PROP(ED.BANK_ACC_REP_ID) state=ED prop=BANK_ACC_REP_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.BANK_COMIS) state=ED prop=BANK_COMIS enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.BANK_TRAN_NO) state=ED prop=BANK_TRAN_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.CANCEL_PAYMT_ID) state=ED prop=CANCEL_PAYMT_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.COMPLETE_DATE) state=ED prop=COMPLETE_DATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.COMPOSE_LINE_COMMENT) state=ED prop=COMPOSE_LINE_COMMENT enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.COVERED_SUM) state=ED prop=COVERED_SUM enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.CUR_ID) state=ED prop=CUR_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.DATE_OTGR) state=ED prop=DATE_OTGR enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.DOC_DATE) state=ED prop=DOC_DATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.DOC_NUMBER) state=ED prop=DOC_NUMBER enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.DOC_SUM) state=ED prop=DOC_SUM enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FACT_PARTNER_ID) state=ED prop=FACT_PARTNER_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FOUNDATION_DATE) state=ED prop=FOUNDATION_DATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FOUNDATION_ID) state=ED prop=FOUNDATION_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FOUNDATION_NO) state=ED prop=FOUNDATION_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FROM_PARTNER_ACC_ID) state=ED prop=FROM_PARTNER_ACC_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FROM_PARTNER_ACC_NO) state=ED prop=FROM_PARTNER_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FROM_PARTNER_BANK_BIC) state=ED prop=FROM_PARTNER_BANK_BIC enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FROM_PARTNER_BANK_NAME) state=ED prop=FROM_PARTNER_BANK_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FROM_PARTNER_CORR_ACC_NO) state=ED prop=FROM_PARTNER_CORR_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FROM_PARTNER_ID) state=ED prop=FROM_PARTNER_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FROM_PARTNER_INN) state=ED prop=FROM_PARTNER_INN enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FROM_PARTNER_NAME) state=ED prop=FROM_PARTNER_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.INTERNAL_NAMBER) state=ED prop=INTERNAL_NAMBER enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.IS_COMPLETED) state=ED prop=IS_COMPLETED enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PAYMENT_TYPE) state=ED prop=PAYMENT_TYPE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PAYS_QUEVE) state=ED prop=PAYS_QUEVE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PAY_PERPOSE) state=ED prop=PAY_PERPOSE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PAY_TYPE_ID) state=ED prop=PAY_TYPE_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PERPOSE_STR) state=ED prop=PERPOSE_STR enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PIF_PAY_ID) state=ED prop=PIF_PAY_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PLACE_ID) state=ED prop=PLACE_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PURPOSE_ID) state=ED prop=PURPOSE_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.SUM_STR) state=ED prop=SUM_STR enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TAX_NDS_RATE) state=ED prop=TAX_NDS_RATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TAX_NDS_SUM) state=ED prop=TAX_NDS_SUM enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TELEGR_ACC_STR) state=ED prop=TELEGR_ACC_STR enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_ACC_ID) state=ED prop=TO_PARTNER_ACC_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_ACC_NO) state=ED prop=TO_PARTNER_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_BANK_BIC) state=ED prop=TO_PARTNER_BANK_BIC enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_BANK_NAME) state=ED prop=TO_PARTNER_BANK_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_BRANCH_NAME) state=ED prop=TO_PARTNER_BRANCH_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_BRANCH_NO) state=ED prop=TO_PARTNER_BRANCH_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_CORR_ACC_NO) state=ED prop=TO_PARTNER_CORR_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_ID) state=ED prop=TO_PARTNER_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_INN) state=ED prop=TO_PARTNER_INN enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_NAME) state=ED prop=TO_PARTNER_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.UK_ID) state=ED prop=UK_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.URGENCY_PAYMENT_ID) state=ED prop=URGENCY_PAYMENT_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.BANK_ACC_REP_ID) state=NEW prop=BANK_ACC_REP_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.BANK_COMIS) state=NEW prop=BANK_COMIS enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.BANK_TRAN_NO) state=NEW prop=BANK_TRAN_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.CANCEL_PAYMT_ID) state=NEW prop=CANCEL_PAYMT_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.COMPLETE_DATE) state=NEW prop=COMPLETE_DATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.COMPOSE_LINE_COMMENT) state=NEW prop=COMPOSE_LINE_COMMENT enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.COVERED_SUM) state=NEW prop=COVERED_SUM enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.CUR_ID) state=NEW prop=CUR_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.DATE_OTGR) state=NEW prop=DATE_OTGR enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.DOC_DATE) state=NEW prop=DOC_DATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.DOC_NUMBER) state=NEW prop=DOC_NUMBER enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.DOC_SUM) state=NEW prop=DOC_SUM enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FACT_PARTNER_ID) state=NEW prop=FACT_PARTNER_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FOUNDATION_DATE) state=NEW prop=FOUNDATION_DATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FOUNDATION_ID) state=NEW prop=FOUNDATION_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FOUNDATION_NO) state=NEW prop=FOUNDATION_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FROM_PARTNER_ACC_ID) state=NEW prop=FROM_PARTNER_ACC_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FROM_PARTNER_ACC_NO) state=NEW prop=FROM_PARTNER_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FROM_PARTNER_BANK_BIC) state=NEW prop=FROM_PARTNER_BANK_BIC enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FROM_PARTNER_BANK_NAME) state=NEW prop=FROM_PARTNER_BANK_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FROM_PARTNER_CORR_ACC_NO) state=NEW prop=FROM_PARTNER_CORR_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FROM_PARTNER_ID) state=NEW prop=FROM_PARTNER_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FROM_PARTNER_INN) state=NEW prop=FROM_PARTNER_INN enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FROM_PARTNER_NAME) state=NEW prop=FROM_PARTNER_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.INTERNAL_NAMBER) state=NEW prop=INTERNAL_NAMBER enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.IS_COMPLETED) state=NEW prop=IS_COMPLETED enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PAYMENT_TYPE) state=NEW prop=PAYMENT_TYPE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PAYS_QUEVE) state=NEW prop=PAYS_QUEVE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PAY_PERPOSE) state=NEW prop=PAY_PERPOSE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PAY_TYPE_ID) state=NEW prop=PAY_TYPE_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PERPOSE_STR) state=NEW prop=PERPOSE_STR enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PIF_PAY_ID) state=NEW prop=PIF_PAY_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PLACE_ID) state=NEW prop=PLACE_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PURPOSE_ID) state=NEW prop=PURPOSE_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TAX_NDS_RATE) state=NEW prop=TAX_NDS_RATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TAX_NDS_SUM) state=NEW prop=TAX_NDS_SUM enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TELEGR_ACC_STR) state=NEW prop=TELEGR_ACC_STR enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_ACC_ID) state=NEW prop=TO_PARTNER_ACC_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_ACC_NO) state=NEW prop=TO_PARTNER_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_BANK_BIC) state=NEW prop=TO_PARTNER_BANK_BIC enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_BANK_NAME) state=NEW prop=TO_PARTNER_BANK_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_BRANCH_NAME) state=NEW prop=TO_PARTNER_BRANCH_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_BRANCH_NO) state=NEW prop=TO_PARTNER_BRANCH_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_CORR_ACC_NO) state=NEW prop=TO_PARTNER_CORR_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_ID) state=NEW prop=TO_PARTNER_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_INN) state=NEW prop=TO_PARTNER_INN enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_NAME) state=NEW prop=TO_PARTNER_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.UK_ID) state=NEW prop=UK_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.URGENCY_PAYMENT_ID) state=NEW prop=URGENCY_PAYMENT_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NOT_CHECK.FOUNDATION_DATE) state=NOT_CHECK prop=FOUNDATION_DATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NOT_CHECK.FOUNDATION_NO) state=NOT_CHECK prop=FOUNDATION_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(SIGNATURE.BANK_ACC_REP_ID) state=SIGNATURE prop=BANK_ACC_REP_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $ENDDOC $DOC(SD_PAYBANK_IN) name=Входящий платеж по банку для СД class=1 product=ALD_FUND name_formula="Вх пл по банку N "+@doc_number+" от " + convert(varchar,@doc_date,3) remark_formula=null $STATE(DEL) name=Удален class=2 $ENDSTATE $STATE(ED) name=Редактируется class=0 $ENDSTATE $STATE(NEW) name=Начальный class=1 $ENDSTATE $STATE(PERF) name=Проведен class=0 $ENDSTATE $STATE(UNDEF) name=Проведен как неопознанный class=0 $ENDSTATE $STATE(UNDO) name=Анулирован class=0 $ENDSTATE $STATE(WAIT_QUERY) name=Проведен без заявки class=0 $ENDSTATE $PROP(DOC_DATE) name=Дата документа field_name=doc_date table_name=t_paydocs field_type=datetime field_length=8 field_scale=3 field_prec=23 page=1 order=1 init_class=1 init_formula=.OPERDAY unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(DOC_NUMBER) name=Номер документа field_name=doc_number table_name=t_paydocs field_type=varchar field_length=30 field_scale=null field_prec=30 page=1 order=2 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_ID) name=Отправитель field_name=from_partner_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=3 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_ID) name=Получатель field_name=to_partner_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=4 init_class=1 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_ACC_ID) name=Cчет отправителя field_name=from_partner_acc_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=5 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_ACC_ID) name=Cчет получателя field_name=to_partner_acc_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=6 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(DOC_SUM) name=Сумма в валюте field_name=doc_sum table_name=t_paydocs field_type=money field_length=8 field_scale=4 field_prec=19 page=1 order=7 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(CUR_ID) name=Валюта суммы field_name=cur_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=8 init_class=1 init_formula=.CUR("RUR") unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TAX_NDS_RATE) name=Ставка НДС field_name=tax_nds_rate table_name=t_paydocs field_type=money field_length=8 field_scale=4 field_prec=19 page=1 order=9 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TAX_NDS_SUM) name=Сумма НДС field_name=tax_nds_sum table_name=t_paydocs field_type=money field_length=8 field_scale=4 field_prec=19 page=1 order=10 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PAYS_QUEVE) name=Очередность платежа field_name=pays_queve table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=11 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(DATE_OTGR) name=Дата отгр продукции field_name=date_otgr table_name=t_paydocs field_type=datetime field_length=8 field_scale=3 field_prec=23 page=1 order=12 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TELEGR_ACC_STR) name=телеграфн счет field_name=telegr_acc_str table_name=t_paydocs field_type=varchar field_length=50 field_scale=null field_prec=50 page=1 order=13 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PERPOSE_STR) name=Назначение field_name=perpose_str table_name=t_paydocs field_type=varchar field_length=255 field_scale=null field_prec=255 page=1 order=14 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(COVERED_SUM) name=Покрытая сумма field_name=covered_sum table_name=t_paydocs field_type=money field_length=8 field_scale=4 field_prec=19 page=1 order=15 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(IS_COMPLETED) name=Исполнен field_name=is_completed table_name=t_paydocs field_type=int field_length=4 field_scale=0 field_prec=10 page=1 order=16 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(COMPLETE_DATE) name=Дата исполнения field_name=complete_date table_name=t_paydocs field_type=datetime field_length=8 field_scale=3 field_prec=23 page=1 order=17 init_class=1 init_formula=.OPERDAY unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PAY_PERPOSE) name=Номер целевого назначения field_name=pay_perpose table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=18 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PAY_TYPE_ID) name=Вид платежа field_name=pay_type_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=19 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(BANK_ACC_REP_ID) name=ID выписки из банка field_name=bank_acc_rep_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=20 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_NAME) name=Получатель field_name=to_partner_name table_name=t_paydocs field_type=varchar field_length=255 field_scale=null field_prec=255 page=1 order=21 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_INN) name=ИНН получателя field_name=to_partner_inn table_name=t_paydocs field_type=varchar field_length=30 field_scale=null field_prec=30 page=1 order=22 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_BANK_NAME) name=Банк получателя field_name=to_partner_bank_name table_name=t_paydocs field_type=varchar field_length=255 field_scale=null field_prec=255 page=1 order=23 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_BANK_BIC) name=БИК банка получателя field_name=to_partner_bank_bic table_name=t_paydocs field_type=varchar field_length=30 field_scale=null field_prec=30 page=1 order=24 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_NAME) name=Отправитель field_name=from_partner_name table_name=t_paydocs field_type=varchar field_length=255 field_scale=null field_prec=255 page=1 order=25 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_INN) name=ИНН отправителя field_name=from_partner_inn table_name=t_paydocs field_type=varchar field_length=30 field_scale=null field_prec=30 page=1 order=26 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_BANK_NAME) name=Банк отправителя field_name=from_partner_bank_name table_name=t_paydocs field_type=varchar field_length=255 field_scale=null field_prec=255 page=1 order=27 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_BANK_BIC) name=Бик банка отправителя field_name=from_partner_bank_bic table_name=t_paydocs field_type=varchar field_length=30 field_scale=null field_prec=30 page=1 order=28 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(COMPOSE_LINE_COMMENT) name=Включать в строку комментария field_name=compose_line_comment table_name=t_paydocs field_type=int field_length=4 field_scale=0 field_prec=10 page=1 order=29 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PAYMENT_TYPE) name=Перевод платежа field_name=payment_type table_name=t_paydocs field_type=int field_length=4 field_scale=0 field_prec=10 page=1 order=30 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_ACC_NO) name=Номер счета отправителя field_name=from_partner_acc_no table_name=t_paydocs field_type=varchar field_length=150 field_scale=null field_prec=150 page=1 order=31 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FROM_PARTNER_CORR_ACC_NO) name=Корр счет отправителя field_name=from_partner_corr_acc_no table_name=t_paydocs field_type=varchar field_length=150 field_scale=null field_prec=150 page=1 order=32 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_CORR_ACC_NO) name=Корр счет получателя field_name=to_partner_corr_acc_no table_name=t_paydocs field_type=varchar field_length=150 field_scale=null field_prec=150 page=1 order=33 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(TO_PARTNER_ACC_NO) name=Номер счета получателя field_name=to_partner_acc_no table_name=t_paydocs field_type=varchar field_length=150 field_scale=null field_prec=150 page=1 order=34 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(SUM_STR) name=Сумма прописью field_name=sum_str table_name=t_paydocs field_type=varchar field_length=255 field_scale=null field_prec=255 page=1 order=35 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FOUNDATION_ID) name=ID Документа основания field_name=foundation_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=36 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(BANK_TRAN_NO) name=Номер банковской транзакции field_name=bank_tran_no table_name=t_paydocs field_type=varchar field_length=100 field_scale=null field_prec=100 page=1 order=37 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FOUNDATION_NO) name=N документа - основания field_name=foundation_no table_name=t_paydocs field_type=varchar field_length=100 field_scale=null field_prec=100 page=1 order=38 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FOUNDATION_DATE) name=Дата документа - основания field_name=foundation_date table_name=t_paydocs field_type=datetime field_length=8 field_scale=3 field_prec=23 page=1 order=39 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PURPOSE_ID) name=ID целевого назначения field_name=purpose_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=40 init_class=null init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PIF_PAY_ID) name=Заявка на размещение паев field_name=pif_pay_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=42 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(FACT_PARTNER_ID) name=Фактический отправитель field_name=fact_partner_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=43 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(UK_ID) name=Управляющий НПФ field_name=uk_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=44 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(PLACE_ID) name=Площадка field_name=place_id table_name=t_paydocs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=45 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(OWNER_ID) name=ID паевого фонда field_name=owner_id table_name=td_depo_docs field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=41 init_class=1 init_formula=.ORGANIZATION unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $RELATION(REL13) class=1 type=T_OPERATIONS form=ITEM_OPERS_LIST prop=null idname=item_id_s order=999 $ENDRELATION $RELATION(REL4) class=0 type=CUR form=null prop=CUR_ID idname=null order=3 $ENDRELATION $RELATION(REL5) class=0 type=SIMPLES form=null prop=PAYS_QUEVE idname=null order=4 $ENDRELATION $RELATION(REL7) class=0 type=SIMPLES form=null prop=PAY_TYPE_ID idname=null order=6 $ENDRELATION $RELATION(REL2) class=0 type=SIMPLES form=null prop=COMPOSE_LINE_COMMENT idname=null order=8 $ENDRELATION $RELATION(REL1) class=0 type=SIMPLES form=null prop=PAYMENT_TYPE idname=null order=null $ENDRELATION $RELATION(REL9) class=0 type=PARTNERS form=null prop=FROM_PARTNER_ID idname=null order=1 $ENDRELATION $RELATION(REL10) class=0 type=PARTNERS form=null prop=TO_PARTNER_ID idname=null order=2 $ENDRELATION $RELATION(REL6) class=0 type=PARTNERS form=null prop=OWNER_ID idname=null order=5 $ENDRELATION $RELATION(REL17) class=0 type=PARTNERS form=null prop=FACT_PARTNER_ID idname=null order=12 $ENDRELATION $RELATION(REL19) class=0 type=PARTNERS form=null prop=UK_ID idname=null order=13 $ENDRELATION $RELATION(REL3) class=0 type=ITEMS form=null prop=BANK_ACC_REP_ID idname=null order=7 $ENDRELATION $RELATION(REL8) class=0 type=ITEMS form=null prop=FOUNDATION_ID idname=null order=9 $ENDRELATION $RELATION(REL16) class=0 type=ITEMS form=null prop=PIF_PAY_ID idname=null order=11 $ENDRELATION $RELATION(REL11) class=0 type=BANK_ACCOUNTS form=null prop=FROM_PARTNER_ACC_ID idname=null order=null $ENDRELATION $RELATION(REL12) class=0 type=BANK_ACCOUNTS form=null prop=TO_PARTNER_ACC_ID idname=null order=null $ENDRELATION $RELATION(REL14) class=1 type=ACTIONS_HISTORY form=UO_ACTIONS_HISTORY_LIST prop=null idname=null order=998 $ENDRELATION $RELATION(REL20) class=0 type=RATE_PLACES form=null prop=PLACE_ID idname=null order=14 $ENDRELATION $RELATION(REL15) class=0 type=TARGET_PURPOSES form=null prop=PURPOSE_ID idname=null order=10 $ENDRELATION $RELATION(REL18) class=1 type=SD_INDOC2DOC form=FORM2 prop=null idname=doc_id_s order=100 $ENDRELATION $FORM(D_PAYDOCS_IN_VIEW) name=Просмотр class=5 filter=null target_state= uo=uo_edit dw=d_sd_paydocs_in_view procedure=ap_10000000000085904 patterns=GENERIC_VIEW_ITEM user_define=0 isvisible=0 istab=1 posx=0 posy=0 width=3223 height=2240 proc_text=$TEXT(16183010) create procedure dbo.%PROC% @sid varchar(30) = null, @bank_acc_rep_id_s varchar(30) = null as declare @id numeric, @action_id numeric, @user_id numeric, @state_id numeric, @type_id numeric begin select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_VIEW_ITEM if @id = -1 begin begin tran .GET_PROPS .CHECK_INSERT .INIT_VARS(B) if isnull(@bank_acc_rep_id_s,'')<>'' select @bank_acc_rep_id=convert(numeric, @bank_acc_rep_id_s) .INSERT_ITEMS .INSERT --.INSERT_INFO4OPER(@id) commit tran end .INSERT_INFO4OPER(@id) .VIEW_ITEM end $ENDTEXT(16183010) $ACTION2RELATION(REL4.CUR_CODE) relation=REL4 where=null prop=CUR_CODE order=1 alias=cur_code $ENDACTION2RELATION $ACTION2RELATION(REL3.ITEM_NAME) relation=REL3 where=null prop=ITEM_NAME order=4 alias=bank_acc_rep_name $ENDACTION2RELATION $ACTION2RELATION(REL9.PARTNER_CODE) relation=REL9 where=null prop=PARTNER_CODE order=1 alias=from_partner_code $ENDACTION2RELATION $ACTION2RELATION(REL9.PARTNER_SHORT_NAME) relation=REL9 where=null prop=PARTNER_SHORT_NAME order=4 alias=from_partner_short_name $ENDACTION2RELATION $ACTION2RELATION(REL10.PARTNER_CODE) relation=REL10 where=null prop=PARTNER_CODE order=1 alias=to_partner_code $ENDACTION2RELATION $ACTION2RELATION(REL10.PARTNER_SHORT_NAME) relation=REL10 where=null prop=PARTNER_SHORT_NAME order=4 alias=to_partner_short_name $ENDACTION2RELATION $ACTION2RELATION(REL6.PARTNER_NAME) relation=REL6 where=null prop=PARTNER_NAME order=2 alias=owner_name $ENDACTION2RELATION $ACTION2RELATION(REL15.CODE) relation=REL15 where=null prop=CODE order=1 alias=pay_purpose_code $ENDACTION2RELATION $ACTION2RELATION(REL15.NAME) relation=REL15 where=null prop=NAME order=2 alias=pay_purpose_name $ENDACTION2RELATION $ACTION2RELATION(REL16.ITEM_NAME) relation=REL16 where=null prop=ITEM_NAME order=3 alias=pif_pay_name $ENDACTION2RELATION $ACTION2RELATION(REL17.PARTNER_SHORT_NAME) relation=REL17 where=null prop=PARTNER_SHORT_NAME order=10 alias=fact_partner_short_name $ENDACTION2RELATION $ACTION2RELATION(REL19.PARTNER_SHORT_NAME) relation=REL19 where=null prop=PARTNER_SHORT_NAME order=10 alias=uk_short_name $ENDACTION2RELATION $ACTION2RELATION(REL20.PLACE_NAME) relation=REL20 where=null prop=PLACE_NAME order=3 alias=place_name $ENDACTION2RELATION $BIND(BIND1) type=PAYS2ITEMS action=D_PAYS2ITEMS_LIST_ITEMS class=1 order=10 idname=paydoc_id_s $ENDBIND $BIND(BIND2) type=SD_INFO4OPER action=FORM_ED class=1 order=5 idname=sid $ENDBIND $FILTER(BANK_ACC_REP_ID) type=11 label=Выписка из банка prop=BANK_ACC_REP_ID arg_code=null arg_type=null arg_length=null arg_prec=null arg_scale=null $ENDFILTER $ENDFORM $ACTION(ACTION1) name=Добавить class=1 form=D_PAYDOCS_IN_VIEW target_state=ED procedure=ap_10000000000085917 patterns=GENERIC_INSERT user_define=0 isvisible=0 istab=1 posx=0 posy=0 width=3218 height=2236 proc_text=$TEXT(16183011) create procedure dbo.%PROC% @sid varchar(30) = null, .ARGLIST as declare @action_id numeric, @id numeric, @user_id numeric, @state_id numeric, @type_id numeric, @item_name varchar(100), @new_state_id numeric begin begin tran select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_UPDATE .ARGCONVERT .INIT_VARS select @pay_perpose=(select code from t_purposes where id=@purpose_id) if @bank_acc_rep_id is not null and .ITEM_STATE_CODE(@bank_acc_rep_id) not in ('CTR') .EXIT_MESSAGE('Выписка должна быть Подтверждена!') if @bank_acc_rep_id is not null and @to_partner_acc_id is null select @to_partner_acc_id=a.id, @to_partner_bank_bic=a.bik, @to_partner_bank_name=a.bank_name, @to_partner_acc_no=a.bank_account_no, @to_partner_corr_acc_no=a.corr_account from t_bank_accounts a, td_bank_account_report where a.id=td_bank_account_report.bank_account_id and td_bank_account_report.id=@bank_acc_rep_id if @to_partner_acc_id is null .EXIT_MESSAGE('Не задан расчетный счет получателя') --if @to_partner_id is null select @to_partner_id=p.id, @to_partner_name=p.partner_name, @to_partner_inn=p.j_inn from t_partners p, t_bank_accounts where p.id=t_bank_accounts.partner_id and t_bank_accounts.id=@to_partner_acc_id if @from_partner_acc_id=@to_partner_acc_id and @from_partner_acc_id is not null and @to_partner_acc_id is not null and @pay_perpose not in (2021,2040) .EXIT_MESSAGE('Расчетные счета отправителя и получателя не должны совпадать') .TEST_UNIQUE select @tax_nds_sum=round((isnull(@tax_nds_rate,0)*isnull(@doc_sum,0)/(100+isnull(@tax_nds_rate,0))),2) .MONEY2STR(@cur_id,@doc_sum,@sum_str) .UPDATE_ITEMS .UPDATE .RELGEN .UPDATE_STATE .ACTION_HISTORY commit tran select sid = convert(varchar, @id) end $ENDTEXT(16183011) $BIND(BIND1) type=SD_INFO4OPER action=ACTION_UPDATE class=1 order=10 idname=sid $ENDBIND $ENDACTION $ACTION(ACTION2) name=Анулировать class=9 form=null target_state=UNDO procedure=ap_10000000000085918 patterns=GENERIC_MOVE user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183011) create procedure dbo.%PROC% @sid varchar(30) = null as .BEGIN('N') .CHECK_USER .CHECK_UPDATE begin tran .UPDATE_STATE .ACTION_HISTORY /*-------Проводки ----------*/ commit tran .END $ENDTEXT(16183011) $ENDACTION $ACTION(ACTION3) name=Изменить class=2 form=D_PAYDOCS_IN_VIEW target_state=null procedure=ap_10000000000085919 patterns=GENERIC_UPDATE user_define=0 isvisible=0 istab=1 posx=0 posy=0 width=3205 height=2240 proc_text=$TEXT(16183011) create procedure dbo.%PROC% @sid varchar(30) = null, .ARGLIST as declare @action_id numeric, @id numeric, @user_id numeric, @state_id numeric, @type_id numeric, @item_name varchar(100), @new_state_id numeric begin tran select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_UPDATE .ARGCONVERT select @pay_perpose=(select code from t_purposes where id=@purpose_id) if @bank_acc_rep_id is not null and @to_partner_acc_id is null select @to_partner_acc_id=a.id, @to_partner_bank_bic=a.bik, @to_partner_bank_name=a.bank_name, @to_partner_acc_no=a.bank_account_no, @to_partner_corr_acc_no=a.corr_account from t_bank_accounts a, td_bank_account_report where a.id=td_bank_account_report.bank_account_id and td_bank_account_report.id=@bank_acc_rep_id if @to_partner_acc_id is null .EXIT_MESSAGE('Не задан расчетный счет получателя') --if @to_partner_id is null select @to_partner_id=p.id, @to_partner_name=p.partner_name, @to_partner_inn=p.j_inn from t_partners p, t_bank_accounts where p.id=t_bank_accounts.partner_id and t_bank_accounts.id=@to_partner_acc_id if @from_partner_acc_id=@to_partner_acc_id and @from_partner_acc_id is not null and @to_partner_acc_id is not null and @pay_perpose not in (2021,2040) .EXIT_MESSAGE('Расчетные счета отправителя и получателя не должны совпадать') .TEST_UNIQUE select @tax_nds_sum=round((isnull(@tax_nds_rate,0)*isnull(@doc_sum,0)/(100+isnull(@tax_nds_rate,0))),2) .MONEY2STR(@cur_id,@doc_sum,@sum_str) .UPDATE_ITEMS .UPDATE .RELGEN .UPDATE_STATE .ACTION_HISTORY commit tran $ENDTEXT(16183011) $BIND(BIND1) type=SD_INFO4OPER action=ACTION_UPDATE class=1 order=10 idname=sid $ENDBIND $ENDACTION $ACTION(ACTION4) name=Удалить class=9 form=null target_state=DEL procedure=ap_10000000000085920 patterns=GENERIC_MOVE user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=2775 height=1444 proc_text=$TEXT(16183011) create procedure dbo.%PROC% @sid varchar(30) = null as declare @action_id numeric, @id numeric, @user_id numeric, @state_id numeric, @new_state_id numeric, @type_id numeric begin tran select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_UPDATE .UPDATE_STATE .ACTION_HISTORY /*-------Проводки ----------*/ commit tran $ENDTEXT(16183011) $ENDACTION $ACTION(ACTION5) name=Восстановить class=9 form=null target_state=ED procedure=ap_10000000000085921 patterns=GENERIC_MOVE user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183011) create procedure dbo.%PROC% @sid varchar(30) = null as declare @action_id numeric, @id numeric, @user_id numeric, @state_id numeric, @new_state_id numeric, @type_id numeric begin tran select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_UPDATE .UPDATE_STATE .ACTION_HISTORY /*-------Проводки ----------*/ commit tran $ENDTEXT(16183011) $ENDACTION $ACTION(OPS_FOR_QUERY) name=Провести с заявкой class=9 form=null target_state=PERF procedure=ap_10000000000085923 patterns=GENERIC_MOVE user_define=1 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183011) create procedure dbo.%PROC% @sid varchar(30) = null as .BEGIN('N') .CHECK_USER .CHECK_UPDATE begin tran .GET_PROPS if @pif_pay_id is null .EXIT_MESSAGE('Не указана заявка') if (@pif_pay_id is not null) and (upper(.ITEM_STATE_CODE(@pif_pay_id)) != 'PROV') .EXIT_MESSAGE('Заявка должна быть на исполнении') if (@pif_pay_id is not null) and ((select pay_owner_id from tp_pif_queries where id=@pif_pay_id) != @from_partner_id) .EXIT_MESSAGE('Отправитель платежа не является пайщиком в заявке') .UPDATE_STATE .ACTION_HISTORY declare @doc_sum_rur money, @cur_price money select @cur_price = t_rates.rate_value from t_rates where t_rates.cur_id = @cur_id and t_rates.rate_date = (select max(t_rates.rate_date) from t_rates where t_rates.cur_id = @cur_id and t_rates.rate_date <= @doc_date and .ITEMS_EXISTS(t_rates.id)) and .ITEMS_EXISTS(t_rates.id) select @doc_sum_rur = round(@doc_sum * @cur_price,2) -- lappo_da 02.05.06 if @from_partner_id<>@fact_partner_id and @fact_partner_id is not null begin .ID_VAR(@acc76_id) .ID_VAR(@fund_plan_id) .NAME_VAR(@comment) select @fund_plan_id = .ARG_PLAN('PIF_ACCOUNT') select @acc76_id=.SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.4.1') select @comment='Корректирующая проводка по смене пайщика для платежа № '+@doc_number+' от '+convert(varchar,@doc_date,3) .OPERATION(@owner_id,@fund_plan_id,@complete_date,@acc76_id,@acc76_id,@doc_sum_rur,'RUR',@complete_date,0,0,@comment,N,@operation_id,@id,@action_id,@action_history_id,@doc_sum,@doc_sum) -- Lappo_da .UPDATE_SUBC(D,'partners',@fact_partner_id) .UPDATE_SUBC(D,'paydocs',@id) .UPDATE_SUBC(K,'partners',@from_partner_id) .UPDATE_SUBC(K,'paydocs',@id) .SUBC_CHECK end /*-------Проводки ----------*/ commit tran .END $ENDTEXT(16183011) $ENDACTION $ACTION(OPS_IN) name=Провести class=9 form=null target_state=PERF procedure=ap_10000000000085922 patterns=GENERIC_MOVE user_define=1 isvisible=0 istab=0 posx=0 posy=0 width=3017 height=1388 proc_text=$TEXT(16183011) create procedure dbo.%PROC% @sid varchar(30) = null as declare @action_id numeric, @id numeric, @user_id numeric, @state_id numeric, @new_state_id numeric, @type_id numeric declare @old_state_code varchar(30) begin tran select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_UPDATE .GET_PROPS declare @cur_code varchar(50) select @cur_code = .CUR_CODE(@cur_id) -- Lappo_da 02.05.06 declare @ms varchar(255) select @ms=' - '+item_name from t_items where id=@id declare @purpose_name varchar(255) select @pay_perpose=code, @purpose_name=name from t_purposes where id=@purpose_id if @from_partner_acc_id=@to_partner_acc_id and @from_partner_acc_id is not null and @to_partner_acc_id is not null and @pay_perpose not in (2021,2040) .EXIT_MESSAGE_PARM('Расчетные счета отправителя и получателя не должны совпадать',@ms) if @bank_acc_rep_id is not null begin if upper(.ITEM_STATE_CODE(@bank_acc_rep_id)) = 'ED' .EXIT_MESSAGE_PARM('Выписка из банка должна быть подтверждена',@ms) if (select bank_account_id from td_bank_account_report where id=@bank_acc_rep_id)<>@to_partner_acc_id .EXIT_MESSAGE_PARM('В выписке из банка и в платеже указаны разные расчетные счета',@ms) end select @old_state_code = upper(state_code) from t_items, t_states where t_items.id=@id and t_items.state_id = t_states.id /*-------Проводки ----------*/ .GET_SD_OPER_DATE(@complete_date,@id) --select @complete_date = isnull(@complete_date,(.OPERDAY)) select @tax_nds_sum = round((isnull(@tax_nds_rate,0)*isnull(@doc_sum,0)/(100.0+isnull(@tax_nds_rate,0))),2) .MONEY2STR(@cur_id,@doc_sum,@sum_str) .UPDATE .UPDATE_ITEMS .PAYS_COMPLETE_STATE(@id,1) .GET_PROPS declare @doc_name varchar(255), @agreement_sum money, @difference_sum money, @doc_name1 varchar(255), @doc_sum_rur money, @cur_price money select @cur_price = t_rates.rate_value from t_rates where t_rates.cur_id = @cur_id and t_rates.rate_date = (select max(t_rates.rate_date) from t_rates where t_rates.cur_id = @cur_id and t_rates.rate_date <= @doc_date and .ITEMS_EXISTS(t_rates.id)) and .ITEMS_EXISTS(t_rates.id) select @doc_sum_rur = round(@doc_sum * @cur_price,2) -- lappo_da 02.05.06 select @doc_name = @purpose_name + ':' + .ITEM_NAME(@id) + ':' + @perpose_str .NAME_VAR(@fund_type_code) .ID_VAR(@asset_manager_id) .ID_VAR(@percent_deposit_acc_id) .ID_VAR(@bank_id) declare @deb_acc_id numeric declare @cred_acc_id numeric declare @deb_acc_id1 numeric declare @cred_acc_id1 numeric declare @pay_rec_sid varchar(30) declare @mess varchar(255) declare @fund_plan_id numeric select @fund_type_code = .ITEM_TYPE_CODE(@owner_id) /* Проводки для ПИФ */ if .STR_FOR_IF(@fund_type_code) = .STR_FOR_IF('pif_fund') begin select @fund_plan_id = .ARG_PLAN('PIF_ACCOUNT') if @old_state_code = upper('UNDEF') /* Из неопознанного */ select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.14') else begin if @cur_code = 'RUR' select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'51') else select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'52') -- Lappo_da end if @pay_perpose=4001 /* 4001 - поступление средств от инвестора (НИКОЙЛ)*/ select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.4.1') else if @pay_perpose=4002 /* 4002 получение средств от УК на выкуп*/ select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.1') else if @pay_perpose=4012 /* 4012 Возврат денежных средств за паи (НИКОЙЛ)*/ begin select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.4.2') select @foundation_id = t_items.id from td_depo_docs, tp_pif_queries, t_items, t_types, t_states where td_depo_docs.owner_id = @owner_id and td_depo_docs.id = tp_pif_queries.id and tp_pif_queries.id = t_items.id and upper(tp_pif_queries.agent_regs_no) = upper(@foundation_no) /* по номеру */ and (tp_pif_queries.total_sum - isnull(tp_pif_queries.tax,0)) = @doc_sum /* по сумме */ and tp_pif_queries.pay_owner_id = @from_partner_id /* по плательщику */ and t_items.type_id = t_types.id and upper(t_types.type_code) = 'PIF_QUERIES_BUY' and t_items.state_id = t_states.id and upper(t_states.state_code) in ('COMPLETE') /* Оплачена */ if @foundation_id is null begin select @mess = 'Заявка N ' + isnull(@foundation_no, '') + ' в статусе оплачена, не найдена' .EXIT_MESSAGE_PARM(@mess,@ms) end /* Проверка платежей */ if (select count(*) from t_paydocs, td_depo_docs, t_items, t_types, t_states where t_paydocs.foundation_id = @foundation_id and t_paydocs.id = td_depo_docs.id and td_depo_docs.owner_id = @owner_id and t_paydocs.id = t_items.id and t_paydocs.complete_date > @complete_date and t_items.type_id = t_types.id and upper(t_types.type_code) in ('SD_PAYBANK_IN', 'SD_PAYBANK_OUT') and t_items.state_id = t_states.id and upper(t_states.state_code) in ('PERF')) >0 begin /* Есть платежи */ select @mess = 'По заявке N ' + isnull(@foundation_no, '') + ' есть платежи с датой больше текущей' .EXIT_MESSAGE_PARM(@mess,@ms) end /* Ссылка для отката*/ update t_paydocs set foundation_id = @foundation_id where id = @id end else if @pay_perpose=2003 /* 2003 платеж по договору продажи ЦБ*/ select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.5.1') else if @pay_perpose=2005 /* 2005 поступление дс за купонный доход*/ select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.16') else if @pay_perpose=2030 /* 2030 прочие платежи за ЦБ*/ select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.5.3') else if @pay_perpose=2006 /* 2006 поступление дивидендов*/ select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.9') else if @pay_perpose=2033 /* с 57-го */ select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'57') else if @pay_perpose=2007 /*2007 Поступление денежных средств на депозит (57)*/ begin if @old_state_code = upper('UNDEF') /* Из неопознанного */ .EXIT_MESSAGE_PARM('Невозможно проведение из статуса неопознанный платеж',@ms) select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'58.2') select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'57') end else if @pay_perpose=2008 /*2008 Поступление денежных средств с депозита (57)*/ begin if @old_state_code = upper('UNDEF') /* Из неопознанного */ .EXIT_MESSAGE_PARM('Невозможно проведение из статуса неопознанный платеж',@ms) if @cur_code = 'RUR' select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'51') else select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'52') -- Lappo_da select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'57') end else if @pay_perpose=2027 /*2027 Поступление денежных средств с депозита (напрямую)*/ begin if .GET_CTRL_COMP_ID(@owner_id) != @from_partner_id .EXIT_MESSAGE_PARM('Выберите счет отправителя - счет фонда',@ms) if @old_state_code = upper('UNDEF') /* Из неопознанного */ .EXIT_MESSAGE_PARM('Невозможно проведение из статуса неопознанный платеж',@ms) if @cur_code = 'RUR' select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'51') else select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'52') -- Lappo_da select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'58.2') end else if @pay_perpose = 2009 /*2009.Поступление денежных средств за недвижимость */ select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.13') else if @pay_perpose = 2010 /*2010.Поступление денежных средств за прочие активы */ select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.13') else if @pay_perpose in (2021,2040) /* Поступление процентов по банковскому депозиту 2021 - на прибыль, 2040 - погашение задолженности */ begin if .GET_CTRL_COMP_ID(@owner_id) != @from_partner_id .EXIT_MESSAGE_PARM('Выберите счет отправителя - счет фонда',@ms) if @from_partner_acc_id is null .EXIT_MESSAGE_PARM('Не задан депозитный счет (счет отправителя)',@ms) select @bank_id = (select b.partner_id from t_bank_accounts ba, t_banks b where ba.id = @from_partner_acc_id and b.id=ba.bank_id and .ITEMS_EXISTS_BY_TYPE(b.partner_id,'PARTNERS_JUR')) if @bank_id is null .EXIT_MESSAGE_PARM('Не задано юр.лицо-банк в счете отправителя',@ms) if (select acc_type_id from t_bank_accounts where id = @to_partner_acc_id) = 30 /* Если тип расчетного счета -депозитный */ begin if @old_state_code = upper('UNDEF') /* Из неопознанного */ .EXIT_MESSAGE_PARM('Невозможно проведение из статуса неопознанный платеж',@ms) select @deb_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'58.2') end select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.10') end else if @pay_perpose=2023 /* 2023 поступление денежных средств по взаимозачету*/ select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.5.5') else if @pay_perpose=2024 /* 2024 Платеж с биржи*/ begin if @place_id is null .EXIT_MESSAGE('Не задана площадка') if @from_partner_acc_id is null .EXIT_MESSAGE('Не задан расч.счет брокера') select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.5.4') end else if @pay_perpose=2026 /* 2026 Начисление процентов на остаток по расчетному счету*/ select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'96.3.7') else if @pay_perpose in (4011,4021) /* 4011 Оплата паев 4021 - Обмен*/ begin if @pif_pay_id is null -- Не указана заявка begin select @new_state_id=.STATE_ID_FROM_CODE(@type_id,'WAIT_QUERY') if @fact_partner_id is null select @fact_partner_id=@from_partner_id select @from_partner_id=@fact_partner_id end if (@pif_pay_id is not null) and (upper(.ITEM_STATE_CODE(@pif_pay_id)) != 'PROV') .EXIT_MESSAGE_PARM('Заявка должна быть на исполнении',@ms) if (@pif_pay_id is not null) and ((select pay_owner_id from tp_pif_queries where id=@pif_pay_id) != @from_partner_id) .EXIT_MESSAGE_PARM('Отправитель платежа не является пайщиком в заявке',@ms) update t_paydocs set covered_sum=@doc_sum where id=@id select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.4.1') end else if @pay_perpose=4013 /* 4013 Возврат платежа по выкупу */ begin if @pif_pay_id is null .EXIT_MESSAGE_PARM('Не указана заявка',@ms) if upper(.ITEM_STATE_CODE(@pif_pay_id)) not in ('CRT','CRT_NEXT') .EXIT_MESSAGE_PARM('Заявка должна быть исполнена',@ms) if (select pay_owner_id from tp_pif_queries where id=@pif_pay_id) != @from_partner_id .EXIT_MESSAGE_PARM('Отправитель платежа не является пайщиком в заявке',@ms) if (select pay_type_id from tp_pif_queries where id=@pif_pay_id)=2 -- нач.задолженность if (select isnull(payment_sum,0) from tp_pif_queries where id=@pif_pay_id) != @doc_sum .EXIT_MESSAGE_PARM('Сумма платежа не равна задолженности по заявке',@ms) if (select isnull(pay_type_id,1) from tp_pif_queries where id=@pif_pay_id)=1 if (select isnull(sum_for_transfer,0) from tp_extract2claim where claim_id=@pif_pay_id) != @doc_sum .EXIT_MESSAGE_PARM('Сумма платежа не равна сумме заявки в отчете регистратора',@ms) if (select count(*) from t_paydocs, td_depo_docs, t_items, t_types, t_states where t_paydocs.pif_pay_id = @pif_pay_id and t_paydocs.id = td_depo_docs.id and td_depo_docs.owner_id = @owner_id and t_paydocs.id = t_items.id and t_paydocs.complete_date > @complete_date and t_items.type_id = t_types.id and upper(t_types.type_code) in ('SD_PAYBANK_IN', 'SD_PAYBANK_OUT') and t_items.state_id = t_states.id and upper(t_states.state_code) in ('PERF')) >0 .EXIT_MESSAGE_PARM('По заявке есть платежи с датой больше текущей',@ms) select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.4.2') .ITEM_MOVE_STATE(@pif_pay_id,'CRT_RET') update t_paydocs set covered_sum=@doc_sum where id=@id end else /* Неуказанное целевое назначение */ begin if @old_state_code = upper('UNDEF') /* Из неопознанного */ .EXIT_MESSAGE_PARM('Укажите целевое назначение',@ms) else begin select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.14') select @new_state_id = .STATE_ID(@type_id, 'UNDEF') end end /* OPERATION */ .UPDATE_STATE .ACTION_HISTORY --.OPERATION(@owner_id,@fund_plan_id,@complete_date,@deb_acc_id,@cred_acc_id,@doc_sum,'RUR',@complete_date,0,0,@doc_name,N) .OPERATION(@owner_id,@fund_plan_id,@complete_date,@deb_acc_id,@cred_acc_id,@doc_sum_rur,'RUR',@complete_date,0,0,@doc_name,N,@operation_id,@id,@action_id,@action_history_id,@doc_sum,@doc_sum) -- Lappo_da 03.05.06 /* END OPERATION */ /* SUBC DEB */ if @pay_perpose in ( 2007 /*2007 Поступление денежных средств на депозит (57)*/, 2008 /*2008 Поступление денежных средств с депозита (57)*/, 2027 /*2027 Поступление денежных средств с депозита (напрямую)*/ ) begin .UPDATE_SUBC(D,'bank_account',@to_partner_acc_id) end else if @old_state_code = upper('UNDEF') /* Из неопознанного */ begin .UPDATE_SUBC(D,'partners',@from_partner_id) end else begin .UPDATE_SUBC(D,'bank_account',@to_partner_acc_id) end /* SUBC CRED */ if @pay_perpose in ( 4002 /* 4002 получение средств от УК на выкуп*/, 2003 /* 2003 платеж по договору продажи ЦБ*/, 2005 /* 2005 Поступление денежных средств за купонный доход*/, 2030 /* 2030 Прочие платежи за ЦБ*/, 2006 /* 2006 Поступление дивидендов */, 2009 /* 2009 Поступление денежных средств за недвижимость */, 2010 /* 2010 Поступление денежных средств за прочие активы */, 2023 /* 2023 поступление денежных средств по взаимозачету*/ ) begin .UPDATE_SUBC(K,'partners',@from_partner_id) end else if @pay_perpose in ( 2024 /* 2024 Платеж с биржи*/ ) begin .UPDATE_SUBC(K,'partners',@from_partner_id) .UPDATE_SUBC(K,'exchange',@place_id) .UPDATE_SUBC(К,'bank_account',@from_partner_acc_id) end else if @pay_perpose in ( 4001 /* 4001 - поступление средств от инвестора (НИКОЙЛ) */, 4011 /* 4011 - оплата паев */, 4021 /* 4021 - обмен */ ) begin .UPDATE_SUBC(K,'partners',@from_partner_id) .UPDATE_SUBC(K,'paydocs',@id) end else if @pay_perpose in ( 4012 /* 4012 - Возврат дс за паи (НИКОЙЛ)*/ ) begin .UPDATE_SUBC(K,'partners',@from_partner_id) .UPDATE_SUBC(K,'pifdocs',@foundation_id) end else if @pay_perpose in ( 4013 /* 4013 - Возврат по выкупу*/ ) begin .UPDATE_SUBC(K,'partners',@from_partner_id) .UPDATE_SUBC(K,'pifdocs',@pif_pay_id) end else if @pay_perpose in ( 2007 /* 2007 Поступление денежных средств на депозит (57)*/, 2008 /* 2008 Поступление денежных средств с депозита (57)*/, 2033 -- c 57-го ) begin .UPDATE_SUBC(K,'bank_account',@to_partner_acc_id) end else if @pay_perpose in ( 2027 /* 2027 Поступление денежных средств с депозита (напрямую)*/ ) begin .UPDATE_SUBC(K,'bank_account',@from_partner_acc_id) end else if @pay_perpose in ( /* Поступление процентов по банковскому депозиту */ 2021, 2040 ) begin .UPDATE_SUBC(K,'partners',@bank_id) .UPDATE_SUBC(K,'bank_account',@from_partner_acc_id) end else /* Неуказанное целевое назначение */ begin .UPDATE_SUBC(K,'partners',@from_partner_id) end .SUBC_CHECK /* ADD */ if @pay_perpose = 2021 /* 2021 Поступление процентов по банковскому депозиту */ begin declare @deb2021_id numeric declare @cred2021_id numeric select @deb2021_id=.SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.10') select @cred2021_id=.SD_ACCID_FROM_EFFNO(@fund_plan_id,'96.3.2') select @doc_name = 'Отнесение процентов по банковскому депозиту на прирост стоимости имущества Фонда ' +@doc_name -- .OPERATION(@owner_id,@fund_plan_id,@complete_date,@deb2021_id,@cred2021_id,@doc_sum,'RUR',@complete_date,0,0,@doc_name,N) .OPERATION(@owner_id,@fund_plan_id,@complete_date,@deb2021_id,@cred2021_id,@doc_sum_rur,'RUR',@complete_date,0,0,@doc_name,N,@operation_id,@id,@action_id,@action_history_id,@doc_sum,@doc_sum) -- Lappo_da 03.05.06 .UPDATE_SUBC(D,'partners',@bank_id) .UPDATE_SUBC(D,'bank_account',@from_partner_acc_id) .SUBC_CHECK end else if @pay_perpose=4012 /* 4012 Возврат денежных средств за паи*/ begin /* Перевод заявки в статус оплата возвращена */ select @pay_rec_sid = convert(varchar(30), @foundation_id) .EXEC_ACTION(@pay_rec_sid,'PIF_QUERIES_BUY','PIF_QUERIES_BUY_RET') end /* END ADD */ end /* ==================== Проводки для НПФ ==================*/ if .STR_FOR_IF(@fund_type_code) = .STR_FOR_IF('npf_fund') begin select @fund_plan_id = .ARG_PLAN('NPF_ACCOUNT') select @asset_manager_id = @to_partner_id .ID_VAR(@acc51_id) .ID_VAR(@acc57_id) .ID_VAR(@acc582_id) .ID_VAR(@acc7421_id) .ID_VAR(@d_bank_account_id) .ID_VAR(@d_partners_id) .ID_VAR(@d_partners_cont_id) .ID_VAR(@d_asset_manager_id) .ID_VAR(@d_place_id) .ID_VAR(@c_bank_account_id) .ID_VAR(@c_partners_id) .ID_VAR(@c_partners_cont_id) .ID_VAR(@c_asset_manager_id) .ID_VAR(@c_place_id) if @cur_code = 'RUR' select @acc51_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'51') else select @acc51_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'52') -- Lappo_da 02.05.06 select @acc57_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'57') select @acc582_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'58.2') select @acc7421_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'74.2.1') if @asset_manager_id = @owner_id -- самостоятельное размещение select @deb_acc_id = @acc51_id else -- размещение через УК*/ select @deb_acc_id = @acc7421_id -- 2026: % на остаток по р.счету if @pay_perpose in (2026) begin select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'91.5') select @c_asset_manager_id=@asset_manager_id if @asset_manager_id = @owner_id -- самостоятельно begin select @d_bank_account_id=@to_partner_acc_id end else -- через УК begin select @d_asset_manager_id=@asset_manager_id end end -- 2003: продажа по сделкам, 2005: купон, 2030: проч.за ЦБ, 2023: взаимозачет, 2035: купон с начислением if @pay_perpose in (2003,2005,2030,2023,2035) begin if @asset_manager_id = @owner_id -- самостоятельно begin select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.4') select @d_bank_account_id=@to_partner_acc_id select @c_partners_id=@from_partner_id end else -- через УК begin select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.5') select @d_asset_manager_id=@asset_manager_id select @c_partners_cont_id=@from_partner_id select @c_partners_id=@asset_manager_id end if @pay_perpose=2035 begin select @deb_acc_id1 = @cred_acc_id select @cred_acc_id1 = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'91.2') end end -- 2024: с биржи if @pay_perpose in (2024) begin if @place_id is null .EXIT_MESSAGE_PARM('Не задана площадка',@ms) select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'55.1') select @c_partners_id=@from_partner_id select @c_asset_manager_id=@asset_manager_id select @c_place_id=@place_id if @asset_manager_id = @owner_id -- самостоятельно select @d_bank_account_id=@to_partner_acc_id else -- через УК select @d_asset_manager_id=@asset_manager_id end -- 2006: поступление дивидендов else if @pay_perpose in (2006,2034) begin select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.9') select @c_asset_manager_id=@asset_manager_id select @c_partners_id=@from_partner_id if @asset_manager_id = @owner_id -- самостоятельно select @d_bank_account_id=@to_partner_acc_id else -- через УК select @d_asset_manager_id=@asset_manager_id if @pay_perpose=2034 begin select @deb_acc_id1 = @cred_acc_id select @cred_acc_id1 = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'91.1') end end -- 2007: на депозит (через 57) else if @pay_perpose=2007 begin -- 'asset_manager' - тот, кто отправил select @deb_acc_id = @acc582_id select @cred_acc_id = @acc57_id select @d_bank_account_id=@to_partner_acc_id select @d_asset_manager_id=@from_partner_id select @c_bank_account_id=@to_partner_acc_id select @c_asset_manager_id=@from_partner_id end -- 2008: с депозита (через 57) else if @pay_perpose=2008 begin -- 'asset_manager' - тот, кто получает select @cred_acc_id = @acc57_id if @asset_manager_id = @owner_id -- самостоятельно begin select @d_bank_account_id=@to_partner_acc_id select @c_bank_account_id=@to_partner_acc_id select @c_asset_manager_id=@owner_id end else -- через УК begin select @d_asset_manager_id=@asset_manager_id select @c_bank_account_id=@to_partner_acc_id select @c_asset_manager_id=@asset_manager_id end end -- 2027: с депозита (напрямую) else if @pay_perpose=2027 begin if (@owner_id != @from_partner_id) and (@owner_id != isnull((select fund_id from t_bank_accounts where id=@from_partner_acc_id),0)) .EXIT_MESSAGE_PARM('Выберите счет отправителя - счет ДУ для фонда или счет фонда',@ms) -- 'asset_manager' - тот, кто получает select @cred_acc_id = @acc582_id if @asset_manager_id = @owner_id -- самостоятельно begin select @d_bank_account_id=@to_partner_acc_id select @c_bank_account_id=@from_partner_acc_id select @c_asset_manager_id=@owner_id end else -- через УК begin select @d_asset_manager_id=@asset_manager_id select @c_bank_account_id=@from_partner_acc_id select @c_asset_manager_id=@asset_manager_id end end -- 2009: за недвижимость, 2010: за прочие активы else if @pay_perpose in (2009,2010) begin if @asset_manager_id = @owner_id -- самостоятельно begin select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.10') select @d_bank_account_id=@to_partner_acc_id select @c_partners_id=@from_partner_id end else -- через УК begin select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.11') select @d_asset_manager_id=@asset_manager_id select @c_partners_id=@asset_manager_id end end -- 5001: взносы по договорам пенсионного обеспечения else if @pay_perpose=5001 begin if @asset_manager_id != @owner_id .EXIT_MESSAGE_PARM('Укажите расчетный счет фонда',@ms) select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'89.1') select @d_bank_account_id=@to_partner_acc_id end -- 2021: проценты по банковскому депозиту else if @pay_perpose in (2021,2040) begin if @from_partner_acc_id is null .EXIT_MESSAGE_PARM('Не задан депозитный счет (счет отправителя)',@ms) select @bank_id = (select b.partner_id from t_bank_accounts ba, t_banks b where ba.id = @from_partner_acc_id and b.id=ba.bank_id and .ITEMS_EXISTS_BY_TYPE(b.partner_id,'PARTNERS_JUR')) if @bank_id is null .EXIT_MESSAGE_PARM('Не задано юр.лицо-банк в счете отправителя',@ms) if @asset_manager_id = @owner_id -- самостоятельно begin if (select acc_type_id from t_bank_accounts where id=@to_partner_acc_id)=30 begin select @deb_acc_id = @acc582_id select @d_bank_account_id=@to_partner_acc_id select @d_asset_manager_id=@owner_id end else begin select @deb_acc_id = @acc51_id select @d_bank_account_id=@to_partner_acc_id end select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.2') select @c_partners_id=@bank_id end else -- через УК begin if (select acc_type_id from t_bank_accounts where id=@to_partner_acc_id)=30 begin select @deb_acc_id = @acc582_id select @d_bank_account_id=@to_partner_acc_id select @d_asset_manager_id=@asset_manager_id end else begin select @deb_acc_id = @acc7421_id select @d_asset_manager_id=@asset_manager_id end select @cred_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.3') select @c_partners_id=@asset_manager_id end select @doc_name1 = 'Отнесение процентов по банковскому депозиту на прирост стоимости имущества Фонда ' +@doc_name1 select @deb_acc_id1 = @cred_acc_id select @cred_acc_id1 = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'91.3') end -- 5005: в ДУ (через 57) else if @pay_perpose=5005 begin if @owner_id = @to_partner_id .EXIT_MESSAGE_PARM('Получателем должен быть управляющий',@ms) if @owner_id != @from_partner_id .EXIT_MESSAGE_PARM('Отправитель должен быть фонд',@ms) select @deb_acc_id = @acc7421_id select @cred_acc_id = @acc57_id select @d_asset_manager_id=@asset_manager_id select @c_bank_account_id=@to_partner_acc_id select @c_asset_manager_id=@asset_manager_id end -- 5006: из ДУ (через 57) else if @pay_perpose=5006 begin if @owner_id != @to_partner_id .EXIT_MESSAGE_PARM('Получатель должен быть фонд',@ms) if @owner_id = @from_partner_id .EXIT_MESSAGE_PARM('Отправитель должен быть управляющий',@ms) select @cred_acc_id = @acc57_id select @d_bank_account_id=@to_partner_acc_id select @c_bank_account_id=@to_partner_acc_id select @c_asset_manager_id=@owner_id end -- 5011: из ДУ (напрямую) else if @pay_perpose=5011 begin if @owner_id != @to_partner_id .EXIT_MESSAGE_PARM('Получатель должен быть фонд',@ms) if @owner_id = @from_partner_id .EXIT_MESSAGE_PARM('Отправитель должен быть управляющий',@ms) select @cred_acc_id = @acc7421_id select @d_bank_account_id=@to_partner_acc_id select @c_asset_manager_id=@from_partner_id end -- 5008: между управляющими (через 57) else if @pay_perpose = 5008 begin if @owner_id = @asset_manager_id /* При размещении самостоятельно НПФ*/ .EXIT_MESSAGE_PARM('Получателем должен быть управляющий',@ms) select @deb_acc_id = @acc7421_id select @cred_acc_id = @acc57_id select @d_asset_manager_id=@asset_manager_id select @c_bank_account_id=@to_partner_acc_id select @c_asset_manager_id=@asset_manager_id end -- 5013: между управляющими (напрямую) else if @pay_perpose = 5013 begin if (@owner_id = @to_partner_id) or (@owner_id = @from_partner_id) .EXIT_MESSAGE_PARM('Фонд не может быть выбран в качестве получателя или отправителя',@ms) select @deb_acc_id = @acc7421_id select @cred_acc_id = @acc7421_id select @d_asset_manager_id=@to_partner_id select @c_asset_manager_id=@from_partner_id end -- Аналитика р.счет на 74.2.1 if @deb_acc_id=@acc7421_id begin if @to_partner_acc_id is null or ((select acc_type_id from t_bank_accounts where id=@to_partner_acc_id) not in (10,20)) or ((select acc_purpose_id from t_bank_accounts where id=@to_partner_acc_id) not in (2)) .EXIT_MESSAGE_PARM('Счет получателя должен быть расчетным счетом УК типа ДУ',@ms) select @d_bank_account_id=@to_partner_acc_id end if @cred_acc_id=@acc7421_id begin if @from_partner_acc_id is null or ((select acc_type_id from t_bank_accounts where id=@from_partner_acc_id) not in (10,20)) or ((select acc_purpose_id from t_bank_accounts where id=@from_partner_acc_id) not in (2)) .EXIT_MESSAGE_PARM('Счет отправителя должен быть расчетным счетом УК типа ДУ',@ms) select @c_bank_account_id=@from_partner_acc_id end -- OPERATION .UPDATE_STATE .ACTION_HISTORY --.OPERATION(@owner_id,@fund_plan_id,@complete_date,@deb_acc_id,@cred_acc_id,@doc_sum,'RUR',@complete_date,0,0,@doc_name,N) .OPERATION(@owner_id,@fund_plan_id,@complete_date,@deb_acc_id,@cred_acc_id,@doc_sum_rur,'RUR',@complete_date,0,0,@doc_name,N,@operation_id,@id,@action_id,@action_history_id,@doc_sum,@doc_sum) -- Lappo_da 03.05.06 -- SUBC DEB if @d_bank_account_id is not null begin .UPDATE_SUBC(D,'bank_account',@d_bank_account_id) end if @d_partners_id is not null begin .UPDATE_SUBC(D,'partners',@d_partners_id) end if @d_partners_cont_id is not null begin .UPDATE_SUBC(D,'partners_cont',@d_partners_cont_id) end if @d_asset_manager_id is not null begin .UPDATE_SUBC(D,'asset_manager',@d_asset_manager_id) end if @d_place_id is not null begin .UPDATE_SUBC(K,'exchange',@d_place_id) end -- SUBC CRED if @c_bank_account_id is not null begin .UPDATE_SUBC(K,'bank_account',@c_bank_account_id) end if @c_partners_id is not null begin .UPDATE_SUBC(K,'partners',@c_partners_id) end if @c_partners_cont_id is not null begin .UPDATE_SUBC(K,'partners_cont',@c_partners_cont_id) end if @c_asset_manager_id is not null begin .UPDATE_SUBC(K,'asset_manager',@c_asset_manager_id) end if @c_place_id is not null begin .UPDATE_SUBC(K,'exchange',@c_place_id) end .SUBC_CHECK -- ADD OPERATION - 1 if @pay_perpose in (2021,2034,2035) begin -- .OPERATION(@owner_id,@fund_plan_id,@complete_date,@deb_acc_id1,@cred_acc_id1,@doc_sum,'RUR',@complete_date,0,0,@doc_name1,Y) .OPERATION(@owner_id,@fund_plan_id,@complete_date,@deb_acc_id1,@cred_acc_id1,@doc_sum_rur,'RUR',@complete_date,0,0,@doc_name1,Y,@operation_id,@id,@action_id,@action_history_id,@doc_sum,@doc_sum) -- Lappo_da 03.05.06 if @pay_perpose=2021 -- Поступление процентов по банковскому депозиту begin .UPDATE_SUBC(D,'partners',@c_partners_id) .UPDATE_SUBC(K,'asset_manager',@asset_manager_id) end if @pay_perpose=2034 -- дивиденды с начислением begin .UPDATE_SUBC(D,'partners',@c_partners_id) .UPDATE_SUBC(D,'asset_manager',@asset_manager_id) .UPDATE_SUBC(K,'asset_manager',@asset_manager_id) end if @pay_perpose=2035 -- купон с начислением begin .UPDATE_SUBC(D,'partners',@c_partners_id) if @c_partners_cont_id is not null begin .UPDATE_SUBC(D,'partners_cont',@c_partners_cont_id) end .UPDATE_SUBC(K,'asset_manager',@asset_manager_id) end .SUBC_CHECK end end -- End NPF -- Запись в журнал .ID_VAR(@j_asset_id) select @j_asset_id=@to_partner_acc_id .SD_ASSENT_ADD(@id,@j_asset_id,@doc_sum,null,@owner_id,@purpose_id) .SD_ASSET_OPER_ADD(@id,@j_asset_id,@doc_sum,null,@owner_id,@purpose_id,1) if @pay_perpose in (2027) begin /* убрано 15.02.05, т.к. говорят, что запись о согласии д.б.одна, касающаяся того счета, на который приходят деньги .SD_ASSENT_ADD(@id,@from_partner_acc_id,@doc_sum,null,@owner_id,@purpose_id) */ .SD_ASSET_OPER_ADD(@id,@from_partner_acc_id,@doc_sum,null,@owner_id,@purpose_id,2) end if @pay_perpose in (2024) begin select @j_asset_id=isnull(@from_partner_acc_id,@place_id) .SD_ASSET_OPER_ADD(@id,@j_asset_id,@doc_sum,null,@owner_id,@purpose_id,2) end commit tran $ENDTEXT(16183011) $ENDACTION $ACTION(OPS_OUT) name=Возврат платежа class=9 form=null target_state=null procedure=ap_50000000000374487 patterns=null user_define=1 isvisible=0 istab=0 posx=null posy=null width=null height=null proc_text=$TEXT(16183011) create procedure dbo.%PROC% @sid varchar(30) = null as .BEGIN('N') .CHECK_USER .CHECK_UPDATE .GET_PROPS begin tran if @pay_perpose = 4011 select @purpose_id = id,@perpose_str = name, @pay_perpose = code from t_purposes where code = 4015 else select @purpose_id = id,@perpose_str = name, @pay_perpose = code from t_purposes where code = 4030 select @doc_number = @doc_number + ' -Возврат' if exists(select 1 from t_paydocs,td_depo_docs where t_paydocs.cancel_paymt_id = @id and t_paydocs.id=td_depo_docs.id and td_depo_docs.owner_id = @owner_id and (.ITEMS_EXISTS_BY_TYPE_STATE(t_paydocs.id,'SD_PAYBANK_OUT','PERF'))) .EXIT_MESSAGE('Исходящий платеж по возврату для данного платежа уже существует в статусе Проведен') ---.OPERS_ROLL .TYPE_INIT('SD_PAYBANK_OUT',1) .TYPE_ASSIGN(doc_date,(.OPERDAY),1) .TYPE_ASSIGN(doc_number,@doc_number,1) .TYPE_ASSIGN(from_partner_id,@to_partner_id,1) .TYPE_ASSIGN(to_partner_id,@from_partner_id,1) .TYPE_ASSIGN(from_partner_acc_id,@to_partner_acc_id,1) .TYPE_ASSIGN(to_partner_acc_id,@from_partner_acc_id,1) .TYPE_ASSIGN(doc_sum,@doc_sum,1) .TYPE_ASSIGN(cur_id,@cur_id,1) .TYPE_ASSIGN(perpose_str,@perpose_str,1) .TYPE_ASSIGN(covered_sum,@covered_sum,1) .TYPE_ASSIGN(complete_date,(.OPERDAY),1) .TYPE_ASSIGN(pay_perpose,@pay_perpose,1) .TYPE_ASSIGN(pay_type_id,@pay_type_id,1) .TYPE_ASSIGN(to_partner_name,@from_partner_name,1) .TYPE_ASSIGN(to_partner_inn,@from_partner_inn,1) .TYPE_ASSIGN(to_partner_bank_name,@from_partner_bank_name,1) .TYPE_ASSIGN(to_partner_bank_bic,@from_partner_bank_bic,1) .TYPE_ASSIGN(from_partner_name,@to_partner_name,1) .TYPE_ASSIGN(from_partner_inn,@to_partner_inn,1) .TYPE_ASSIGN(from_partner_bank_name,@to_partner_bank_name,1) .TYPE_ASSIGN(from_partner_bank_bic,@to_partner_bank_bic,1) .TYPE_ASSIGN(compose_line_comment,@compose_line_comment,1) .TYPE_ASSIGN(payment_type,@payment_type,1) .TYPE_ASSIGN(from_partner_acc_no,@to_partner_acc_no,1) .TYPE_ASSIGN(from_partner_corr_acc_no,@to_partner_corr_acc_no,1) .TYPE_ASSIGN(to_partner_corr_acc_no,@from_partner_corr_acc_no,1) .TYPE_ASSIGN(to_partner_acc_no,@from_partner_acc_no,1) .TYPE_ASSIGN(sum_str,@sum_str,1) .TYPE_ASSIGN(foundation_id,@foundation_id,1) .TYPE_ASSIGN(foundation_no,@foundation_no,1) .TYPE_ASSIGN(foundation_date,@foundation_date,1) .TYPE_ASSIGN(purpose_id,@purpose_id,1) .TYPE_ASSIGN(owner_id,@owner_id,1) .TYPE_ASSIGN(pif_pay_id,@pif_pay_id,1) .TYPE_ASSIGN(uk_id,@uk_id,1) .TYPE_ASSIGN(place_id,@place_id,1) .TYPE_ASSIGN(cancel_paymt_id,@id,1) .TYPE_INSERT('SD_PAYBANK_OUT','ED',1) --.EXEC_ACTION(@id1_1,'SD_PAYBANK_OUT','SIG') --.EXEC_ACTION(@id1_1,'SD_PAYBANK_OUT','OPS') commit tran .END $ENDTEXT(16183011) $ENDACTION $ACTION(REV) name=Отменить подтверждение class=9 form=null target_state=ED procedure=ap_10000000000085924 patterns=GENERIC_MOVE user_define=1 isvisible=0 istab=0 posx=0 posy=0 width=2917 height=1396 proc_text=$TEXT(16183011) create procedure dbo.%PROC% @sid varchar(30) = null as declare @action_id numeric, @id numeric, @user_id numeric, @state_id numeric, @new_state_id numeric, @type_id numeric begin tran select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_UPDATE .GET_PROPS declare @ms varchar(255) select @ms=' - '+item_name from t_items where id=@id declare @pay_rec_sid varchar(255) declare @pay_rec_code varchar(30) declare @ost_sum money declare @operday datetime declare @stock_account_id numeric declare @fund_plan_id numeric declare @mess varchar(255) if exists(select 1 from t_paydocs,td_depo_docs where t_paydocs.cancel_paymt_id = @id and t_paydocs.id=td_depo_docs.id and td_depo_docs.owner_id = @owner_id and (.ITEMS_EXISTS_BY_TYPE_STATE(t_paydocs.id,'SD_PAYBANK_OUT','PERF'))) .EXIT_MESSAGE('Откат не возможен, т.к. существует проведенный возвращаемый исходящий платеж') /*==NIKOIL Only if @pay_perpose=4012 /* 4012 Возврат денежных средств за паи (НИКОЙЛ) */ begin select @pay_rec_code = upper(t_states.state_code) from t_states, t_items where t_items.id = @foundation_id and t_items.state_id = t_states.id if @pay_rec_code = upper('PAY_RET') begin select @operday = .OPERDAY select @fund_plan_id = .ARG_PLAN('PIF_ACCOUNT') select @stock_account_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.4.2') .TRANSACTION_SAVE .TOTALS_QUERY_SUB(@owner_id,@fund_plan_id,@operday,'01/01/49',@stock_account_id,'partners',@from_partner_id,'pifdocs',@foundation_id,N,N,L,N,N,N,Y) select @ost_sum = isnull((select sum(#tmp_oss.saldo_ce) from #tmp_oss), 0) .DROP_QUERY_TABLES(#tmp_oss) .TRANSACTION_RESTORE if @ost_sum <> @doc_sum begin select @mess = 'Задолженность по заявке равна ' + convert(varchar, @ost_sum) .EXIT_MESSAGE(@mess) end end else if (@pay_rec_code <> upper('DEL')) and (@pay_rec_code is not null) .EXIT_MESSAGE('Заявка не находится в статусе "Оплата возвращена"') /* Проверка платежей */ if (select count(*) from t_paydocs, td_depo_docs, t_items, t_types, t_states where t_paydocs.foundation_id = @foundation_id and t_paydocs.id = td_depo_docs.id and td_depo_docs.owner_id = @owner_id and t_paydocs.id = t_items.id and t_paydocs.complete_date > @complete_date and t_items.type_id = t_types.id and upper(t_types.type_code) in ('SD_PAYBANK_IN', 'SD_PAYBANK_OUT') and t_items.state_id = t_states.id and upper(t_states.state_code) in ('PERF')) >0 begin /* Есть платежи */ select @mess = 'По заявке N ' + isnull(@foundation_no, '') + ' есть платежи с датой больше текущей' .EXIT_MESSAGE(@mess) end /* Обновление ссылки */ update t_paydocs set foundation_id = null where id = @id end -- NIKOIL Only */ --================================================================================== -- 4011 - оплата паев, 4021 - обмен if @pay_perpose in (4011,4021) and upper(.ITEM_STATE_CODE(@id))='PERF' begin if exists(select 1 from tp_paymt2pays where paymt_id=@id) .EXIT_MESSAGE_PARM('Документ связан с отчетом регистратора',@ms) if (@pif_pay_id is not null) and (upper(.ITEM_STATE_CODE(@pif_pay_id)) != 'PROV') .EXIT_MESSAGE_PARM('Заявка должна быть на исполнении',@ms) end -- 4013 - возврат выкупа if @pay_perpose=4013 and upper(.ITEM_STATE_CODE(@id))='PERF' begin if (@pif_pay_id is not null) and (upper(.ITEM_STATE_CODE(@pif_pay_id)) != 'CRT_RET') .EXIT_MESSAGE_PARM('Заявка должна быть в статусе оплата возвращена',@ms) if (select count(*) from t_paydocs, td_depo_docs, t_items, t_types, t_states where t_paydocs.pif_pay_id = @pif_pay_id and t_paydocs.id = td_depo_docs.id and td_depo_docs.owner_id = @owner_id and t_paydocs.id = t_items.id and t_paydocs.complete_date > @complete_date and t_items.type_id = t_types.id and upper(t_types.type_code) in ('SD_PAYBANK_IN', 'SD_PAYBANK_OUT') and t_items.state_id = t_states.id and upper(t_states.state_code) in ('PERF')) >0 .EXIT_MESSAGE_PARM('По заявке есть платежи с датой больше текущей',@ms) if not exists(select 1 from t_paydocs where t_paydocs.pif_pay_id = @pif_pay_id and t_paydocs.id != @id and t_paydocs.pay_perpose = @pay_perpose and .ITEMS_EXISTS_BY_TYPE(t_paydocs.id,'SD_PAYBANK_IN') and upper(.ITEM_STATE_CODE(t_paydocs.id)) = 'PERF') begin .ITEM_MOVE_STATE(@pif_pay_id,'CRT') end else begin .ITEM_MOVE_STATE(@pif_pay_id,'CRT_NEXT') end end -- Документ связан с исполненным обязательством if exists(select 1 from t_pays2items p, .ACTUAL_TABLES where p.paydoc_id = @id and upper(t_states.state_code)='PROT' .ACTUAL_WHERE(p.id)) .EXIT_MESSAGE_PARM('Платежный документ связан с исполненным обязательством',@ms) -- перевод всех привязок к плат. документу в статус Удален .FOR_DOCS(N,'pays2items',ALL,C,'t_pays2items.id = t_items100.id and t_pays2items.paydoc_id=@id','t_pays2items') if upper(@for_state_code1) = "CRT" begin declare @for_id1_s varchar(30) select @for_id1_s = convert(varchar,@for_id1) .EXEC_ACTION(@for_id1_s,'pays2items','delete_pays2items',Y) end .END_FOR_DOCS if @pay_perpose in (4011,4013,4021) /* 4011 - оплата паев, 4013 - возврат по выкупу */ update t_paydocs set covered_sum=null where id=@id --===================================================================================== .UPDATE_STATE .ACTION_HISTORY /*==== NIKOIL Only if @pay_perpose=4012 /* 4012 Возврат денежных средств за паи (НИКОЙЛ) */ begin if @pay_rec_code = upper('PAY_RET') begin select @pay_rec_sid = convert(varchar(30), @foundation_id) .EXEC_ACTION(@pay_rec_sid,'PIF_QUERIES_BUY','PIF_QUERIES_BUY_COMPLETE') end end */ .OPERS_ROLL(ALL) .PAYS_COMPLETE_STATE(@id,0) .SD_ASSENT_DEL(@id) .SD_ASSET_OPER_DEL(@id) commit tran $ENDTEXT(16183011) $ENDACTION $ACTION(UNDEF) name=Провести как неопознанный class=9 form=null target_state=UNDEF procedure=ap_10000000000085925 patterns=GENERIC_MOVE user_define=1 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183014) create procedure dbo.%PROC% @sid varchar(30) = null as declare @action_id numeric, @id numeric, @user_id numeric, @state_id numeric, @new_state_id numeric, @type_id numeric begin tran select @action_id = %ACTION_ID% select @id = convert(numeric, @sid) .CHECK_USER .CHECK_UPDATE .GET_PROPS select @pay_perpose=(select code from t_purposes where id=@purpose_id) if @from_partner_acc_id=@to_partner_acc_id .EXIT_MESSAGE('Расчетные счета отправителя и получателя не должны совпадать') .UPDATE_STATE .ACTION_HISTORY /*-------Проводки ----------*/ declare @cur_code varchar(50) select @cur_code = .CUR_CODE(@cur_id) -- Lappo_da 02.05.06 declare @doc_sum_rur money, @cur_price money select @cur_price = t_rates.rate_value from t_rates where t_rates.cur_id = @cur_id and t_rates.rate_date = (select max(t_rates.rate_date) from t_rates where t_rates.cur_id = @cur_id and t_rates.rate_date <= @doc_date and .ITEMS_EXISTS(t_rates.id)) and .ITEMS_EXISTS(t_rates.id) select @doc_sum_rur = round(@doc_sum * @cur_price,2) -- lappo_da 02.05.06 .NAME_VAR(@fund_type_code) declare @doc_name varchar(255) select @fund_type_code = .ITEM_TYPE_CODE(@owner_id) --select @complete_date = .OPERDAY .GET_SD_OPER_DATE(@complete_date,@id) select @doc_name = 'Проведение платежа как неопознанного' /* Проводки для ПИФ */ if .STR_FOR_IF(@fund_type_code) = .STR_FOR_IF('pif_fund') begin declare @d_acc_id numeric declare @c_acc_id numeric declare @fund_plan_id numeric select @fund_plan_id = .ARG_PLAN('PIF_ACCOUNT') if @cur_code = 'RUR' select @d_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'51') else select @d_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'52') select @c_acc_id = .SD_ACCID_FROM_EFFNO(@fund_plan_id,'76.14') --.OPERATION(@owner_id,@fund_plan_id,@complete_date,@d_acc_id,@c_acc_id,@doc_sum,'RUR',@complete_date,0,0,@doc_name,N) .OPERATION(@owner_id,@fund_plan_id,@complete_date,@d_acc_id,@c_acc_id,@doc_sum_rur,'RUR',@complete_date,0,0,@doc_name,N,@operation_id,@id,@action_id,@action_history_id,@doc_sum,@doc_sum) -- Lappo_da 03.05.06 .UPDATE_SUBC(D,'bank_account',@to_partner_acc_id) .UPDATE_SUBC(K,'partners',@from_partner_id) .SUBC_CHECK end if .STR_FOR_IF(@fund_type_code) = .STR_FOR_IF('npf_fund') begin .EXIT_MESSAGE('Для НПФ временно не поддерживается') end .SD_ASSENT_ADD(@id,@to_partner_acc_id,@doc_sum,null,@owner_id,@purpose_id) .SD_ASSET_OPER_ADD(@id,@to_partner_acc_id,@doc_sum,null,@owner_id,@purpose_id,1) commit tran $ENDTEXT(16183014) $ENDACTION $STATE2ACTION(ED.ACTION2) state=ED action=ACTION2 $ENDSTATE2ACTION $STATE2ACTION(ED.ACTION3) state=ED action=ACTION3 $ENDSTATE2ACTION $STATE2ACTION(ED.ACTION4) state=ED action=ACTION4 $ENDSTATE2ACTION $STATE2ACTION(ED.D_PAYDOCS_IN_VIEW) state=ED action=D_PAYDOCS_IN_VIEW $ENDSTATE2ACTION $STATE2ACTION(ED.OPS_IN) state=ED action=OPS_IN $ENDSTATE2ACTION $STATE2ACTION(ED.UNDEF) state=ED action=UNDEF $ENDSTATE2ACTION $STATE2ACTION(NEW.ACTION1) state=NEW action=ACTION1 $ENDSTATE2ACTION $STATE2ACTION(PERF.D_PAYDOCS_IN_VIEW) state=PERF action=D_PAYDOCS_IN_VIEW $ENDSTATE2ACTION $STATE2ACTION(PERF.OPS_OUT) state=PERF action=OPS_OUT $ENDSTATE2ACTION $STATE2ACTION(PERF.REV) state=PERF action=REV $ENDSTATE2ACTION $STATE2ACTION(UNDEF.ACTION3) state=UNDEF action=ACTION3 $ENDSTATE2ACTION $STATE2ACTION(UNDEF.D_PAYDOCS_IN_VIEW) state=UNDEF action=D_PAYDOCS_IN_VIEW $ENDSTATE2ACTION $STATE2ACTION(UNDEF.OPS_IN) state=UNDEF action=OPS_IN $ENDSTATE2ACTION $STATE2ACTION(UNDEF.OPS_OUT) state=UNDEF action=OPS_OUT $ENDSTATE2ACTION $STATE2ACTION(UNDEF.REV) state=UNDEF action=REV $ENDSTATE2ACTION $STATE2ACTION(UNDO.ACTION5) state=UNDO action=ACTION5 $ENDSTATE2ACTION $STATE2ACTION(UNDO.D_PAYDOCS_IN_VIEW) state=UNDO action=D_PAYDOCS_IN_VIEW $ENDSTATE2ACTION $STATE2ACTION(WAIT_QUERY.ACTION3) state=WAIT_QUERY action=ACTION3 $ENDSTATE2ACTION $STATE2ACTION(WAIT_QUERY.D_PAYDOCS_IN_VIEW) state=WAIT_QUERY action=D_PAYDOCS_IN_VIEW $ENDSTATE2ACTION $STATE2ACTION(WAIT_QUERY.OPS_FOR_QUERY) state=WAIT_QUERY action=OPS_FOR_QUERY $ENDSTATE2ACTION $STATE2ACTION(WAIT_QUERY.REV) state=WAIT_QUERY action=REV $ENDSTATE2ACTION $STATE2PROP(ED.BANK_ACC_REP_ID) state=ED prop=BANK_ACC_REP_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.BANK_TRAN_NO) state=ED prop=BANK_TRAN_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.COMPLETE_DATE) state=ED prop=COMPLETE_DATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.COMPOSE_LINE_COMMENT) state=ED prop=COMPOSE_LINE_COMMENT enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.COVERED_SUM) state=ED prop=COVERED_SUM enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.CUR_ID) state=ED prop=CUR_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.DATE_OTGR) state=ED prop=DATE_OTGR enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.DOC_DATE) state=ED prop=DOC_DATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.DOC_NUMBER) state=ED prop=DOC_NUMBER enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.DOC_SUM) state=ED prop=DOC_SUM enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FACT_PARTNER_ID) state=ED prop=FACT_PARTNER_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FOUNDATION_DATE) state=ED prop=FOUNDATION_DATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FOUNDATION_ID) state=ED prop=FOUNDATION_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FOUNDATION_NO) state=ED prop=FOUNDATION_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FROM_PARTNER_ACC_ID) state=ED prop=FROM_PARTNER_ACC_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FROM_PARTNER_ACC_NO) state=ED prop=FROM_PARTNER_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FROM_PARTNER_BANK_BIC) state=ED prop=FROM_PARTNER_BANK_BIC enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FROM_PARTNER_BANK_NAME) state=ED prop=FROM_PARTNER_BANK_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FROM_PARTNER_CORR_ACC_NO) state=ED prop=FROM_PARTNER_CORR_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FROM_PARTNER_ID) state=ED prop=FROM_PARTNER_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.FROM_PARTNER_INN) state=ED prop=FROM_PARTNER_INN enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.IS_COMPLETED) state=ED prop=IS_COMPLETED enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PAYMENT_TYPE) state=ED prop=PAYMENT_TYPE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PAYS_QUEVE) state=ED prop=PAYS_QUEVE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PAY_PERPOSE) state=ED prop=PAY_PERPOSE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PAY_TYPE_ID) state=ED prop=PAY_TYPE_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PERPOSE_STR) state=ED prop=PERPOSE_STR enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PIF_PAY_ID) state=ED prop=PIF_PAY_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PLACE_ID) state=ED prop=PLACE_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.PURPOSE_ID) state=ED prop=PURPOSE_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TAX_NDS_RATE) state=ED prop=TAX_NDS_RATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TAX_NDS_SUM) state=ED prop=TAX_NDS_SUM enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TELEGR_ACC_STR) state=ED prop=TELEGR_ACC_STR enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_ACC_ID) state=ED prop=TO_PARTNER_ACC_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_ACC_NO) state=ED prop=TO_PARTNER_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_BANK_BIC) state=ED prop=TO_PARTNER_BANK_BIC enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_BANK_NAME) state=ED prop=TO_PARTNER_BANK_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_CORR_ACC_NO) state=ED prop=TO_PARTNER_CORR_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_ID) state=ED prop=TO_PARTNER_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_INN) state=ED prop=TO_PARTNER_INN enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.TO_PARTNER_NAME) state=ED prop=TO_PARTNER_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.UK_ID) state=ED prop=UK_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.BANK_ACC_REP_ID) state=NEW prop=BANK_ACC_REP_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.BANK_TRAN_NO) state=NEW prop=BANK_TRAN_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.COMPLETE_DATE) state=NEW prop=COMPLETE_DATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.COMPOSE_LINE_COMMENT) state=NEW prop=COMPOSE_LINE_COMMENT enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.COVERED_SUM) state=NEW prop=COVERED_SUM enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.CUR_ID) state=NEW prop=CUR_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.DATE_OTGR) state=NEW prop=DATE_OTGR enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.DOC_DATE) state=NEW prop=DOC_DATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.DOC_NUMBER) state=NEW prop=DOC_NUMBER enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.DOC_SUM) state=NEW prop=DOC_SUM enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FACT_PARTNER_ID) state=NEW prop=FACT_PARTNER_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FOUNDATION_DATE) state=NEW prop=FOUNDATION_DATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FOUNDATION_ID) state=NEW prop=FOUNDATION_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FOUNDATION_NO) state=NEW prop=FOUNDATION_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FROM_PARTNER_ACC_ID) state=NEW prop=FROM_PARTNER_ACC_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FROM_PARTNER_ACC_NO) state=NEW prop=FROM_PARTNER_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FROM_PARTNER_BANK_BIC) state=NEW prop=FROM_PARTNER_BANK_BIC enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FROM_PARTNER_BANK_NAME) state=NEW prop=FROM_PARTNER_BANK_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FROM_PARTNER_CORR_ACC_NO) state=NEW prop=FROM_PARTNER_CORR_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FROM_PARTNER_ID) state=NEW prop=FROM_PARTNER_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.FROM_PARTNER_INN) state=NEW prop=FROM_PARTNER_INN enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.IS_COMPLETED) state=NEW prop=IS_COMPLETED enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PAYMENT_TYPE) state=NEW prop=PAYMENT_TYPE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PAYS_QUEVE) state=NEW prop=PAYS_QUEVE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PAY_PERPOSE) state=NEW prop=PAY_PERPOSE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PAY_TYPE_ID) state=NEW prop=PAY_TYPE_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PERPOSE_STR) state=NEW prop=PERPOSE_STR enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PIF_PAY_ID) state=NEW prop=PIF_PAY_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PLACE_ID) state=NEW prop=PLACE_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.PURPOSE_ID) state=NEW prop=PURPOSE_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TAX_NDS_RATE) state=NEW prop=TAX_NDS_RATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TAX_NDS_SUM) state=NEW prop=TAX_NDS_SUM enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TELEGR_ACC_STR) state=NEW prop=TELEGR_ACC_STR enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_ACC_ID) state=NEW prop=TO_PARTNER_ACC_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_ACC_NO) state=NEW prop=TO_PARTNER_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_BANK_BIC) state=NEW prop=TO_PARTNER_BANK_BIC enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_BANK_NAME) state=NEW prop=TO_PARTNER_BANK_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_CORR_ACC_NO) state=NEW prop=TO_PARTNER_CORR_ACC_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_ID) state=NEW prop=TO_PARTNER_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_INN) state=NEW prop=TO_PARTNER_INN enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.TO_PARTNER_NAME) state=NEW prop=TO_PARTNER_NAME enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.UK_ID) state=NEW prop=UK_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(PERF.BANK_ACC_REP_ID) state=PERF prop=BANK_ACC_REP_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(UNDEF.COMPLETE_DATE) state=UNDEF prop=COMPLETE_DATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(UNDEF.FOUNDATION_DATE) state=UNDEF prop=FOUNDATION_DATE enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(UNDEF.FOUNDATION_NO) state=UNDEF prop=FOUNDATION_NO enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(UNDEF.PIF_PAY_ID) state=UNDEF prop=PIF_PAY_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(UNDEF.PURPOSE_ID) state=UNDEF prop=PURPOSE_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(WAIT_QUERY.PIF_PAY_ID) state=WAIT_QUERY prop=PIF_PAY_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $ENDDOC $DOC(SD_DEPOSIT_OVERVALUE_LIST) name=Депозиты для переоценки class=1 product=ALD_FUND name_formula=null remark_formula=null $STATE(CREATE) name=Создан class=0 $ENDSTATE $STATE(NEW) name=Начальный class=1 $ENDSTATE $PROP(BANK_ACC_ID) name=Депозитный счет field_name=bank_acc_id table_name=ts_sd_deposit_overvalue_list field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=2 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(CALC_SUM) name=Начисленный процент field_name=calc_sum table_name=ts_sd_deposit_overvalue_list field_type=money field_length=8 field_scale=4 field_prec=19 page=1 order=3 init_class=1 init_formula=0 unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(BAL_SUM) name=Сумма вклада field_name=bal_sum table_name=ts_sd_deposit_overvalue_list field_type=money field_length=8 field_scale=4 field_prec=19 page=1 order=4 init_class=1 init_formula=0 unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(DOC_ID) name=Документ переоценки field_name=doc_id table_name=ts_sd_deposit_overvalue_list field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=1 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $RELATION(REL1) class=0 type=BANK_ACCOUNTS form=null prop=BANK_ACC_ID idname=null order=1 $ENDRELATION $FORM(FORM1) name=Редактор class=5 filter=null target_state= uo=uo_edit dw=d_deposit_overvalue_tab_edit procedure=ap_30000000000013276 patterns=GENERIC_VIEW_ITEM_O user_define=0 isvisible=1 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183021) create procedure dbo.%PROC% @sid varchar(30) = null .ARGLIST_FILTER as .BEGIN('N') .CHECK_USER .CHECK_VIEW .ARGCONVERT_FILTER if @id = -1 begin .VIEW_INIT end else begin .VIEW_ITEM end .END $ENDTEXT(16183021) $ACTION2RELATION(REL1.BANK_ACCOUNT_NO) relation=REL1 where=null prop=BANK_ACCOUNT_NO order=16 alias=bank_account_no $ENDACTION2RELATION $ACTION2RELATION(REL1.BANK_NAME) relation=REL1 where=null prop=BANK_NAME order=17 alias=bank_name $ENDACTION2RELATION $FILTER(DOC_ID) type=11 label=Документ переоценки prop=DOC_ID arg_code=null arg_type=null arg_length=null arg_prec=null arg_scale=null $ENDFILTER $CALC(OWNER_ID_S) class=1 type=varchar calc_lenght=30 calc_prec=null calc_scale=null formula=(select owner_id from ts_sd_deposit_overvalue where id=@doc_id) label=Фонд order=1 $ENDCALC $ENDFORM $FORM(FORM2) name=Список депозитов class=4 filter=null target_state= uo=uo_list dw=d_deposit_overvalue_tab_list procedure=ap_30000000000013280 patterns=GENERIC_VIEW_LIST user_define=0 isvisible=1 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183021) create procedure dbo.%PROC% @sid varchar(30) = null .ARGLIST_FILTER as .BEGIN('N') .CHECK_USER .CHECK_VIEW .ARGCONVERT_FILTER .VIEW_LIST .END $ENDTEXT(16183021) $ACTION2RELATION(REL1.BANK_ACCOUNT_NO) relation=REL1 where=null prop=BANK_ACCOUNT_NO order=16 alias=bank_account_no $ENDACTION2RELATION $ACTION2RELATION(REL1.BANK_NAME) relation=REL1 where=null prop=BANK_NAME order=17 alias=bank_name $ENDACTION2RELATION $FILTER(DOC_ID) type=11 label=ID док prop=DOC_ID arg_code=null arg_type=null arg_length=null arg_prec=null arg_scale=null $ENDFILTER $ENDFORM $ACTION(ACTION1) name=Добавить class=1 form=FORM1 target_state=CREATE procedure=ap_30000000000013283 patterns=GENERIC_INSERT_O user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=2167 height=696 proc_text=$TEXT(16183022) create procedure dbo.%PROC% @sid varchar(30) = null, .ARGLIST as .BEGIN('N') .CHECK_USER .CHECK_INSERT .ARGCONVERT .INIT_VARS if exists(select 1 from ts_sd_deposit_overvalue_list t where t.doc_id=@doc_id and t.id<>@id and t.bank_acc_id=@bank_acc_id) .EXIT_MESSAGE('Данный депозит уже выбран') if upper(.ITEM_STATE_CODE(@doc_id)) not in ('ED') .EXIT_MESSAGE('Действие невозможно для подтвержденной операции') select @calc_sum=round(@calc_sum,2) begin tran .INSERT_ITEMS .INSERT .UPDATE_STATE /* exec ap_get_rate4overvalue @id, @rate_date if @@error != 0 begin rollback tran return end */ commit tran select sid = convert(varchar, @id) .END $ENDTEXT(16183022) $ENDACTION $ACTION(ACTION2) name=Изменить class=2 form=FORM1 target_state=null procedure=ap_30000000000013284 patterns=GENERIC_UPDATE user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=2167 height=684 proc_text=$TEXT(16183022) create procedure dbo.%PROC% @sid varchar(30) = null, .ARGLIST as .BEGIN('N') .CHECK_USER .CHECK_UPDATE .ARGCONVERT if exists(select 1 from ts_sd_deposit_overvalue_list t where t.doc_id=@doc_id and t.id<>@id and t.bank_acc_id=@bank_acc_id) .EXIT_MESSAGE('Данный депозит уже выбран') if upper(.ITEM_STATE_CODE(@doc_id)) not in ('ED') .EXIT_MESSAGE('Действие невозможно для подтвержденной операции') select @calc_sum=round(@calc_sum,2) begin tran .UPDATE_ITEMS .UPDATE .UPDATE_STATE commit tran .END $ENDTEXT(16183022) $ENDACTION $ACTION(ACTION3) name=Удалить class=9 form=null target_state=null procedure=ap_30000000000013285 patterns=GENERIC_MOVE user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183022) create procedure dbo.%PROC% @sid varchar(30) = null as .BEGIN('N') .CHECK_USER .CHECK_UPDATE begin tran .GET_PROPS if upper(.ITEM_STATE_CODE(@doc_id)) not in ('ED') .EXIT_MESSAGE('Действие невозможно для подтвержденной операции') .TYPE_DELETE commit tran .END $ENDTEXT(16183022) $ENDACTION $ACTION(ACTION4) name=Удалить все class=9 form=null target_state=null procedure=ap_30000000000013286 patterns=GENERIC_MOVE user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183022) create procedure dbo.%PROC% @sid varchar(30) = null as .BEGIN('N') .CHECK_USER .CHECK_UPDATE begin tran .GET_PROPS if upper(.ITEM_STATE_CODE(@doc_id)) not in ('ED') .EXIT_MESSAGE('Действие невозможно для подтвержденной операции') delete t_items from ts_sd_deposit_overvalue_list t where t.id=t_items.id and t.doc_id=@doc_id delete ts_sd_deposit_overvalue_list where doc_id=@doc_id commit tran .END $ENDTEXT(16183022) $ENDACTION $ACTION(GET_CALC_SUM) name=Расчет class=9 form=null target_state=null procedure=ap_30000000000013287 patterns=GENERIC_MOVE user_define=1 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183022) create procedure dbo.%PROC% @sid varchar(30) = null as .BEGIN('N') .CHECK_USER .CHECK_UPDATE .GET_PROPS declare @in_date datetime, @owner_id numeric, @days_qty int if upper(.ITEM_STATE_CODE(@doc_id)) not in ('ED') .EXIT_MESSAGE('Действие невозможно для подтвержденной операции') select @in_date=in_date, @owner_id=owner_id, @days_qty=days_qty from ts_sd_deposit_overvalue where id=@doc_id if isnull(@days_qty,0)=0 select @days_qty=1 begin tran .GET_DEPOSIT_RATE(@bank_acc_id,@owner_id,@in_date,@bal_sum,@days_qty,1,@calc_sum) .UPDATE -- Не включаем в список если дата окончания депозита меньше даты документа Переоценка -- if isnull(@calc_sum,0)=-1 begin .TYPE_DELETE end commit tran .END $ENDTEXT(16183022) $ENDACTION $STATE2ACTION(CREATE.ACTION2) state=CREATE action=ACTION2 $ENDSTATE2ACTION $STATE2ACTION(CREATE.ACTION3) state=CREATE action=ACTION3 $ENDSTATE2ACTION $STATE2ACTION(CREATE.ACTION4) state=CREATE action=ACTION4 $ENDSTATE2ACTION $STATE2ACTION(CREATE.FORM1) state=CREATE action=FORM1 $ENDSTATE2ACTION $STATE2ACTION(CREATE.FORM2) state=CREATE action=FORM2 $ENDSTATE2ACTION $STATE2ACTION(CREATE.GET_CALC_SUM) state=CREATE action=GET_CALC_SUM $ENDSTATE2ACTION $STATE2ACTION(NEW.ACTION1) state=NEW action=ACTION1 $ENDSTATE2ACTION $STATE2PROP(CREATE.BAL_SUM) state=CREATE prop=BAL_SUM enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(CREATE.BANK_ACC_ID) state=CREATE prop=BANK_ACC_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(CREATE.CALC_SUM) state=CREATE prop=CALC_SUM enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(CREATE.DOC_ID) state=CREATE prop=DOC_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.BAL_SUM) state=NEW prop=BAL_SUM enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.BANK_ACC_ID) state=NEW prop=BANK_ACC_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.CALC_SUM) state=NEW prop=CALC_SUM enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.DOC_ID) state=NEW prop=DOC_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $ENDDOC $DOC(SD_DEPOSIT_OVERVALUE) name=Переоценка депозитов class=1 product=ALD_FUND name_formula=.TYPE_NAME(@type_id) + ' № ' + @in_no+' от '+.DATE_TO_STR(@in_date) remark_formula=null $STATE(BEG) name=Начальный class=1 $ENDSTATE $STATE(DEL) name=Удален class=2 $ENDSTATE $STATE(ED) name=Редактируется class=0 $ENDSTATE $STATE(OP_END) name=Подтвержден class=0 $ENDSTATE $PROP(IN_DATE) name=Дата документа field_name=in_date table_name=ts_sd_deposit_overvalue field_type=datetime field_length=8 field_scale=3 field_prec=23 page=1 order=1 init_class=1 init_formula=.OPERDAY unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(IN_NO) name=Номер документа field_name=in_no table_name=ts_sd_deposit_overvalue field_type=varchar field_length=50 field_scale=null field_prec=50 page=1 order=2 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(INITIATOR_ID) name=Управляющий (для НПФ) field_name=initiator_id table_name=ts_sd_deposit_overvalue field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=3 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(OWNER_ID) name=Владелец field_name=owner_id table_name=ts_sd_deposit_overvalue field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=4 init_class=1 init_formula=.ORGANIZATION unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(COMMENT) name=Комментарий field_name=comment table_name=ts_sd_deposit_overvalue field_type=varchar field_length=255 field_scale=null field_prec=255 page=1 order=5 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(DAYS_QTY) name=Кол-во дней для расчета field_name=days_qty table_name=ts_sd_deposit_overvalue field_type=int field_length=4 field_scale=0 field_prec=10 page=1 order=6 init_class=1 init_formula=1 unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $RELATION(REL1) class=0 type=FUND_GROUP form=null prop=OWNER_ID idname=null order=2 $ENDRELATION $RELATION(REL2) class=1 type=T_OPERATIONS form=ITEM_OPERS_LIST prop=null idname=item_id_s order=130 $ENDRELATION $RELATION(REL3) class=0 type=PARTNERS form=null prop=INITIATOR_ID idname=null order=1 $ENDRELATION $RELATION(REL4) class=1 type=ACTIONS_HISTORY form=UO_ACTIONS_HISTORY_LIST prop=null idname=null order=120 $ENDRELATION $FORM(FORM1) name=Просмотр class=5 filter=null target_state= uo=uo_edit dw=d_deposit_overvalue_edit procedure=ap_30000000000013303 patterns=GENERIC_VIEW_ITEM user_define=0 isvisible=0 istab=1 posx=0 posy=0 width=3095 height=1056 proc_text=$TEXT(16183024) create procedure dbo.%PROC% @sid varchar(30) = null as .BEGIN('N') .CHECK_USER .CHECK_VIEW_ITEM if @id = -1 begin begin tran .GET_PROPS .CHECK_INSERT .INIT_VARS(B) .INSERT_ITEMS .INSERT commit tran end .VIEW_ITEM .END $ENDTEXT(16183024) $ACTION2RELATION(REL3.PARTNER_CODE) relation=REL3 where=null prop=PARTNER_CODE order=null alias=initiator_code $ENDACTION2RELATION $ACTION2RELATION(REL3.PARTNER_SHORT_NAME) relation=REL3 where=null prop=PARTNER_SHORT_NAME order=null alias=initiator_short_name $ENDACTION2RELATION $ACTION2RELATION(REL1.CTRL_COMP_ID) relation=REL1 where=null prop=CTRL_COMP_ID order=2 alias=ctrl_comp_id_s $ENDACTION2RELATION $ACTION2RELATION(REL1.PARTNER_CODE) relation=REL1 where=null prop=PARTNER_CODE order=4 alias=fond_code $ENDACTION2RELATION $ACTION2RELATION(REL1.PARTNER_SHORT_NAME) relation=REL1 where=null prop=PARTNER_SHORT_NAME order=3 alias=fond_name $ENDACTION2RELATION $BIND(BIND2) type=SD_ACCUR_OVERVALUE_LIST action=FORM2 class=1 order=2 idname=doc_id_s $ENDBIND $BIND(BIND1) type=SD_DEPOSIT_OVERVALUE_LIST action=FORM2 class=1 order=1 idname=doc_id_s $ENDBIND $ENDFORM $FORM(FORM2) name=Список class=4 filter=FORM3 target_state= uo=uo_list dw=d_deposit_overvalue_list procedure=ap_30000000000013307 patterns=GENERIC_VIEW_LIST user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=2277 height=1012 proc_text=$TEXT(16183027) create procedure dbo.%PROC% @sid varchar(30) = null .ARGLIST_FILTER as declare @action_id numeric, @user_id numeric, @state_id numeric, @type_id numeric begin set nocount on select @action_id = %ACTION_ID% .CHECK_USER .CHECK_VIEW .ARGCONVERT_FILTER .VIEW_LIST end $ENDTEXT(16183027) $ACTION2RELATION(REL1.PARTNER_CODE) relation=REL1 where=null prop=PARTNER_CODE order=null alias=partner_code $ENDACTION2RELATION $ACTION2RELATION(REL3.PARTNER_CODE) relation=REL3 where=null prop=PARTNER_CODE order=null alias=uk_code $ENDACTION2RELATION $ENDFORM $FORM(FORM3) name=Фильтр class=6 filter=null target_state= uo=uo_filter dw=d_deposit_overvalue_filter procedure=ap_30000000000013310 patterns=null user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=1920 height=516 proc_text=$TEXT(16183027) create procedure dbo.%PROC% as begin declare @in_date_db datetime declare @in_date_de datetime declare @owner_id numeric declare @owner_name varchar(255) select @in_date_db = .OPERDAY select @in_date_de = @in_date_db select @owner_id=.ORGANIZATION select @owner_name=(select partner_short_name from t_partners where id=@owner_id) select convert(datetime, @in_date_db) as in_date_db, convert(datetime, @in_date_de) as in_date_de, convert(varchar(255), null) as in_no, convert(varchar(30), @owner_id) as owner_id_s, @owner_name as partner_name end $ENDTEXT(16183027) $FILTER(IN_DATE) type=2 label=Дата документа prop=IN_DATE arg_code=null arg_type=null arg_length=null arg_prec=null arg_scale=null $ENDFILTER $FILTER(IN_NO) type=3 label=Номер документа prop=IN_NO arg_code=null arg_type=null arg_length=null arg_prec=null arg_scale=null $ENDFILTER $FILTER(OWNER_ID) type=1 label=Фонд prop=OWNER_ID arg_code=null arg_type=null arg_length=null arg_prec=null arg_scale=null $ENDFILTER $ENDFORM $ACTION(ACTION1) name=Добавить class=1 form=FORM1 target_state=ED procedure=ap_30000000000013314 patterns=GENERIC_INSERT user_define=0 isvisible=0 istab=1 posx=0 posy=0 width=2272 height=1204 proc_text=$TEXT(16183028) create procedure dbo.%PROC% @sid varchar(30) = null, .ARGLIST as .BEGIN('N') .CHECK_USER .CHECK_UPDATE .ARGCONVERT .INIT_VARS .TEST_UNIQUE begin tran .UPDATE_ITEMS .UPDATE .RELGEN .UPDATE_STATE .ACTION_HISTORY commit tran select sid = convert(varchar, @id) .END $ENDTEXT(16183028) $ENDACTION $ACTION(ACTION2) name=Сформировать список депозитов class=9 form=null target_state=null procedure=ap_30000000000013315 patterns=GENERIC_MOVE user_define=1 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183028) create procedure dbo.%PROC% @sid varchar(30) = null as .BEGIN('N') .CHECK_USER .CHECK_UPDATE .GET_PROPS .ID_VAR(@plan_id) .ID_VAR(@pp_id) .ID_VAR(@acc_id) .ID_VAR(@subc_type_id) .ID_VAR(@uk_subc_type_id) .ID_VAR(@bank_acc_id) .NAME_VAR(@fund_type) declare @op_date datetime, @bal_sum money, @list_id_s varchar(30), @sum_accur money select @fund_type=upper(.ITEM_TYPE_CODE(@owner_id)) if @fund_type='PIF_FUND' select @plan_id=.ARG_PLAN('PIF_ACCOUNT') if @fund_type='NPF_FUND' select @plan_id=.ARG_PLAN('NPF_ACCOUNT') select @acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'58.2') select @subc_type_id=.SUBCTYPE_FROM_CODE('bank_account') select @uk_subc_type_id=.SUBCTYPE_FROM_CODE('asset_manager') select @op_date=dateadd(dd,1,(.DATE_NORM(@in_date,B))) .TRANSACTION_SAVE create table #bank_accounts (id numeric, bal_sum money, sum_accur money) select @pp_id=pp.id from t_plans2partner pp where pp.partner_id=@owner_id and pp.plan_id=@plan_id and .ITEMS_EXISTS(pp.id) if @fund_type='PIF_FUND' insert into #bank_accounts (id, bal_sum, sum_accur) select os.item_id, sum(isnull(ol.sum_bal*ol.deb_or_cred,0)), sum(isnull(ol.sum_accur*ol.deb_or_cred,0)) from t_oper_subconto os, t_oper_list ol, t_operations o where o.partner2plan_id=@pp_id and ol.head_id=o.id and ol.acc_id=@acc_id and os.id=ol.id and os.subconto_type_id=@subc_type_id and o.op_date<@op_date group by os.item_id having sum(isnull(ol.sum_bal*ol.deb_or_cred,0))>0 if @fund_type='NPF_FUND' insert into #bank_accounts (id, bal_sum) select os.item_id, sum(isnull(ol.sum_bal*ol.deb_or_cred,0)) from t_oper_subconto os, t_oper_list ol, t_operations o where o.partner2plan_id=@pp_id and ol.head_id=o.id and ol.acc_id=@acc_id and os.id=ol.id and os.subconto_type_id=@subc_type_id and o.op_date<@op_date and exists(select 1 from t_oper_subconto os2 where os2.id=ol.id and os2.subconto_type_id=@uk_subc_type_id and os2.item_id=isnull(@initiator_id,@owner_id)) group by os.item_id having sum(isnull(ol.sum_bal*ol.deb_or_cred,0))>0 begin tran delete t_items from ts_sd_deposit_overvalue_list t where t_items.id=t.id and t.doc_id=@id delete ts_sd_deposit_overvalue_list where doc_id = @id declare bank_accounts cursor for select id, bal_sum, sum_accur from #bank_accounts for read only open bank_accounts fetch bank_accounts into @bank_acc_id, @bal_sum, @sum_accur while .CURSOR_STATE=0 begin if (select t_currencies.cur_code from t_currencies, t_bank_accounts where t_bank_accounts.bank_acc_cur_id = t_currencies.id and t_bank_accounts.id = @bank_acc_id) = 'RUR' begin if @sum_accur = 0 begin .TYPE_INIT('SD_DEPOSIT_OVERVALUE_LIST',1) .TYPE_ASSIGN(doc_id,@id,1) .TYPE_ASSIGN(bank_acc_id,@bank_acc_id,1) .TYPE_ASSIGN(bal_sum,@bal_sum,1) .TYPE_INSERT('SD_DEPOSIT_OVERVALUE_LIST','CREATE',1) select @list_id_s=convert(varchar(30),.TYPE_FIELD(id,1)) .EXEC_ACTION(@list_id_s,'SD_DEPOSIT_OVERVALUE_LIST','GET_CALC_SUM') end end else begin .TYPE_INIT('SD_ACCUR_OVERVALUE_LIST',3) .TYPE_ASSIGN(doc_id,@id,3) .TYPE_ASSIGN(bank_acc_id,@bank_acc_id,3) .TYPE_ASSIGN(bal_sum,@bal_sum,3) .TYPE_ASSIGN(bal_sum_cur,@sum_accur,3) .TYPE_INSERT('SD_ACCUR_OVERVALUE_LIST','CREATE',3) select @list_id_s=convert(varchar(30),.TYPE_FIELD(id,3)) .EXEC_ACTION(@list_id_s,'SD_ACCUR_OVERVALUE_LIST','GET_CALC_SUM') end fetch bank_accounts into @bank_acc_id, @bal_sum, @sum_accur end close bank_accounts .DEALLOCATE bank_accounts commit tran -- отбор валютных счетов -- Lappo_da select @plan_id=.ARG_PLAN('PIF_ACCOUNT') select @acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'52') select @pp_id=pp.id from t_plans2partner pp where pp.partner_id=@owner_id and pp.plan_id=@plan_id and .ITEMS_EXISTS(pp.id) delete from #bank_accounts insert into #bank_accounts (id, bal_sum, sum_accur) select os.item_id, sum(isnull(ol.sum_bal*ol.deb_or_cred,0)), sum(isnull(ol.sum_accur*ol.deb_or_cred,0)) from t_oper_subconto os, t_oper_list ol, t_operations o where o.partner2plan_id=@pp_id and ol.head_id=o.id and ol.acc_id=@acc_id and os.id=ol.id and os.subconto_type_id=@subc_type_id and o.op_date<@op_date group by os.item_id having sum(isnull(ol.sum_bal*ol.deb_or_cred,0))>0 begin tran declare bank_accounts_cur cursor for select id, bal_sum, sum_accur from #bank_accounts for read only open bank_accounts_cur fetch bank_accounts_cur into @bank_acc_id, @bal_sum, @sum_accur while .CURSOR_STATE=0 begin .TYPE_INIT('SD_ACCUR_OVERVALUE_LIST',2) .TYPE_ASSIGN(doc_id,@id,2) .TYPE_ASSIGN(bank_acc_id,@bank_acc_id,2) .TYPE_ASSIGN(bal_sum,@bal_sum,2) .TYPE_ASSIGN(bal_sum_cur,@sum_accur,2) .TYPE_INSERT('SD_ACCUR_OVERVALUE_LIST','CREATE',2) select @list_id_s=convert(varchar(30),.TYPE_FIELD(id,2)) .EXEC_ACTION(@list_id_s,'SD_ACCUR_OVERVALUE_LIST','GET_CALC_SUM') fetch bank_accounts_cur into @bank_acc_id, @bal_sum, @sum_accur end close bank_accounts_cur .DEALLOCATE bank_accounts_cur commit tran --------------------------- drop table #bank_accounts .TRANSACTION_RESTORE .END $ENDTEXT(16183028) $ENDACTION $ACTION(ACTION3) name=Изменить class=2 form=FORM1 target_state=null procedure=ap_30000000000013316 patterns=GENERIC_UPDATE user_define=0 isvisible=0 istab=1 posx=0 posy=0 width=3118 height=1152 proc_text=$TEXT(16183028) create procedure dbo.%PROC% @sid varchar(30) = null, .ARGLIST as .BEGIN('N') .CHECK_USER .CHECK_UPDATE .ARGCONVERT .TEST_UNIQUE begin tran .UPDATE_ITEMS .UPDATE .RELGEN .UPDATE_STATE .ACTION_HISTORY commit tran .END $ENDTEXT(16183028) $BIND(BIND1) type=SD_DEPOSIT_OVERVALUE_LIST action=FORM2 class=1 order=1 idname=doc_id_s $ENDBIND $ENDACTION $ACTION(ACTION4) name=На редактирование class=9 form=null target_state=ED procedure=ap_30000000000013318 patterns=GENERIC_MOVE user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183028) create procedure dbo.%PROC% @sid varchar(30) = null as .BEGIN('N') .CHECK_USER .CHECK_UPDATE begin tran .UPDATE_STATE .ACTION_HISTORY .OPERS_ROLL commit tran .END $ENDTEXT(16183028) $ENDACTION $ACTION(ACTION5) name=Удалить class=9 form=null target_state=DEL procedure=ap_30000000000013319 patterns=GENERIC_MOVE user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183028) create procedure dbo.%PROC% @sid varchar(30) = null as .BEGIN('N') .CHECK_USER .CHECK_UPDATE begin tran .UPDATE_STATE .ACTION_HISTORY delete t_items from ts_sd_deposit_overvalue_list t where t_items.id=t.id and t.doc_id=@id delete ts_sd_deposit_overvalue_list where doc_id = @id commit tran .END $ENDTEXT(16183028) $ENDACTION $ACTION(ACTION6) name=Подтвердить class=9 form=null target_state=OP_END procedure=ap_30000000000013320 patterns=GENERIC_MOVE user_define=1 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183028) create procedure dbo.%PROC% @sid varchar(30) = null as .BEGIN('N') .CHECK_USER .CHECK_UPDATE .GET_PROPS .ID_VAR(@plan_id) .ID_VAR(@pp_id) .ID_VAR(@acc_id) .ID_VAR(@subc_type_id) .ID_VAR(@uk_subc_type_id) .ID_VAR(@bank_acc_id) .NAME_VAR(@fund_type) declare @check_date datetime, @calc_sum money, @asset_manager_id numeric, @partner_id numeric, @deb_acc_id numeric, @cred_acc_id numeric, @doc_name varchar(255), @ms varchar(255), @flag int select @flag = 0 if exists(select 1 from ts_sd_deposit_overvalue_list where doc_id=@id and isnull(calc_sum,0)<=0 and .ITEMS_EXISTS_BY_TYPE(ts_sd_deposit_overvalue_list.id,'SD_DEPOSIT_OVERVALUE_LIST')) .EXIT_MESSAGE('Не заданы суммы для проводок') select @fund_type=upper(.ITEM_TYPE_CODE(@owner_id)) select @asset_manager_id=isnull(@initiator_id,@owner_id) if @fund_type='PIF_FUND' select @plan_id=.ARG_PLAN('PIF_ACCOUNT') if @fund_type='NPF_FUND' select @plan_id=.ARG_PLAN('NPF_ACCOUNT') select @pp_id=pp.id from t_plans2partner pp where pp.partner_id=@owner_id and pp.plan_id=@plan_id and .ITEMS_EXISTS(pp.id) select @acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'58.2') select @cred_acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'91.3') if @fund_type='NPF_FUND' begin if @asset_manager_id=@owner_id select @deb_acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'76.2') else select @deb_acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'76.3') end if @fund_type='PIF_FUND' select @deb_acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'76.10') select @subc_type_id=.SUBCTYPE_FROM_CODE('bank_account') select @uk_subc_type_id=.SUBCTYPE_FROM_CODE('asset_manager') select @check_date=dateadd(dd,1,(.DATE_NORM(@in_date,B))) select @doc_name='Начисление задолженности по получению процентного дохода по депозитному счету' if @fund_type='PIF_FUND' and exists(select 1 from ts_sd_deposit_overvalue_list t where t.doc_id=@id and t.bank_acc_id not in (select os.item_id from t_oper_subconto os, t_oper_list ol, t_operations o where o.partner2plan_id=@pp_id and ol.head_id=o.id and ol.acc_id=@acc_id and os.id=ol.id and os.subconto_type_id=@subc_type_id and o.op_date<@check_date group by os.item_id having sum(isnull(ol.sum_bal*ol.deb_or_cred,0))>0) and .ITEMS_EXISTS_BY_TYPE(t.id,'SD_DEPOSIT_OVERVALUE_LIST')) .EXIT_MESSAGE('Нет остатков по одному из отобранных счетов') if @fund_type='NPF_FUND' and exists(select 1 from ts_sd_deposit_overvalue_list t where t.doc_id=@id and t.bank_acc_id not in (select os.item_id from t_oper_subconto os, t_oper_list ol, t_operations o where o.partner2plan_id=@pp_id and ol.head_id=o.id and ol.acc_id=@acc_id and os.id=ol.id and os.subconto_type_id=@subc_type_id and o.op_date<@check_date and exists(select 1 from t_oper_subconto os2 where os2.id=ol.id and os2.subconto_type_id=@uk_subc_type_id and os2.item_id=isnull(@initiator_id,@owner_id)) group by os.item_id having sum(isnull(ol.sum_bal*ol.deb_or_cred,0))>0) and .ITEMS_EXISTS_BY_TYPE(t.id,'SD_DEPOSIT_OVERVALUE_LIST')) .EXIT_MESSAGE('Нет остатков по одному из отобранных счетов') begin tran .UPDATE_STATE .ACTION_HISTORY declare items cursor for select t.bank_acc_id, t.calc_sum from ts_sd_deposit_overvalue_list t where t.doc_id=@id and .ITEMS_EXISTS_BY_TYPE(t.id,'SD_DEPOSIT_OVERVALUE_LIST') for read only open items fetch items into @bank_acc_id, @calc_sum while .CURSOR_STATE=0 begin select @partner_id=null if @fund_type = 'NPF_FUND' and @asset_manager_id<>@owner_id select @partner_id=@asset_manager_id else select @partner_id=(select b.partner_id from t_banks b, t_bank_accounts ba where ba.id=@bank_acc_id and ba.bank_id=b.id and .ITEMS_EXISTS_BY_TYPE(b.partner_id,'PARTNERS_JUR')) if @partner_id is null begin select @ms='Не задано юр.лицо-банк для депозитного счета № '+(select bank_account_no from t_bank_accounts where id=@bank_acc_id) .EXIT_MESSAGE(@ms) end .OPERATION(@owner_id,@plan_id,@in_date,@deb_acc_id,@cred_acc_id,@calc_sum,'RUR',@in_date,null,null,@doc_name,N) .UPDATE_SUBC(D,'partners',@partner_id) if @fund_type = 'PIF_FUND' begin .UPDATE_SUBC(D,'bank_account',@bank_acc_id) end if @fund_type = 'NPF_FUND' begin .UPDATE_SUBC(K,'asset_manager',@asset_manager_id) end .SUBC_CHECK fetch items into @bank_acc_id, @calc_sum end close items .DEALLOCATE items commit tran --------- Валютные ------------- declare @saldo_52 money declare @acc_52_id numeric declare @cur_rate money declare @cur_id numeric declare @oper_sum money declare @saldo_551 money declare @acc_551_id numeric declare @sum_accur money declare @saldo_7610 money declare @acc_7610_id numeric declare @subc1_type_id numeric select @plan_id=.ARG_PLAN('PIF_ACCOUNT') select @acc_52_id=.SD_ACCID_FROM_EFFNO(@plan_id,'52') select @acc_551_id=.SD_ACCID_FROM_EFFNO(@plan_id,'55.1') select @acc_7610_id=.SD_ACCID_FROM_EFFNO(@plan_id,'76.10') select @pp_id=pp.id from t_plans2partner pp where pp.partner_id=@owner_id and pp.plan_id=@plan_id and .ITEMS_EXISTS(pp.id) select @subc_type_id=.SUBCTYPE_FROM_CODE('bank_account') select @subc1_type_id=.SUBCTYPE_FROM_CODE('partners') declare items_cur cursor for select t.bank_acc_id, t.calc_sum, t.bal_sum_cur from ts_sd_deposit_overvalue_list t where t.doc_id=@id and .ITEMS_EXISTS_BY_TYPE(t.id,'SD_ACCUR_OVERVALUE_LIST') for read only open items_cur fetch items_cur into @bank_acc_id, @calc_sum, @sum_accur while .CURSOR_STATE=0 begin select @oper_sum = 0 if (select t_bank_accounts.acc_type_id from t_bank_accounts where t_bank_accounts.id = @bank_acc_id) = 10 begin select @saldo_52 = (select sum(isnull(t_oper_list.sum_bal * t_oper_list.deb_or_cred,0)) from t_operations, t_oper_list, t_oper_subconto where t_operations.partner2plan_id = @pp_id and t_operations.id = t_oper_list.head_id and t_oper_list.acc_id = @acc_52_id and t_oper_subconto.id = t_oper_list.id and t_oper_subconto.subconto_type_id = @subc_type_id and t_oper_subconto.item_id = @bank_acc_id) select @cur_id = t_bank_accounts.bank_acc_cur_id from t_bank_accounts where t_bank_accounts.id = @bank_acc_id select @cur_rate = t_rates.rate_value from t_rates where t_rates.cur_id = @cur_id and t_rates.rate_date = (select max(t_rates.rate_date) from t_rates where cur_id = @cur_id and t_rates.rate_date <= @in_date and .ITEMS_EXISTS(t_rates.id)) and .ITEMS_EXISTS(t_rates.id) select @oper_sum = @sum_accur * @cur_rate - @saldo_52 select @oper_sum = round(@oper_sum,2) if @oper_sum > 0 begin select @cred_acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'91.5') select @deb_acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'52') end else begin select @oper_sum = (-1)* @oper_sum select @flag = 1 select @deb_acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'91.5') select @cred_acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'52') end select @doc_name = 'Переоценка валютного счета' .OPERATION(@owner_id,@plan_id,@in_date,@deb_acc_id,@cred_acc_id,@oper_sum,'RUR',@in_date,null,null,@doc_name,N) if @flag <> 1 begin .UPDATE_SUBC(D,'bank_account',@bank_acc_id) end else begin .UPDATE_SUBC(C,'bank_account',@bank_acc_id) end .SUBC_CHECK end else if (select t_bank_accounts.acc_type_id from t_bank_accounts where t_bank_accounts.id = @bank_acc_id) = 30 begin select @saldo_551 = (select sum(isnull(t_oper_list.sum_bal * t_oper_list.deb_or_cred,0)) from t_operations, t_oper_list, t_oper_subconto where t_operations.partner2plan_id = @pp_id and t_operations.id = t_oper_list.head_id and t_oper_list.acc_id = @acc_551_id and t_oper_subconto.id = t_oper_list.id and t_oper_subconto.subconto_type_id = @subc_type_id and t_oper_subconto.item_id = @bank_acc_id) select @cur_id = t_bank_accounts.bank_acc_cur_id from t_bank_accounts where t_bank_accounts.id = @bank_acc_id select @cur_rate = t_rates.rate_value from t_rates where t_rates.cur_id = @cur_id and t_rates.rate_date = (select max(t_rates.rate_date) from t_rates where cur_id = @cur_id and t_rates.rate_date <= @in_date and .ITEMS_EXISTS(t_rates.id)) and .ITEMS_EXISTS(t_rates.id) select @oper_sum = @sum_accur * @cur_rate - @saldo_551 select @oper_sum = round(@oper_sum,2) if @oper_sum > 0 begin select @cred_acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'91.5') select @deb_acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'55.1') end else begin select @oper_sum = (-1)* @oper_sum select @flag = 1 select @deb_acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'91.5') select @cred_acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'55.1') end select @doc_name = 'Переоценка валютного депозитного счета' .OPERATION(@owner_id,@plan_id,@in_date,@deb_acc_id,@cred_acc_id,@oper_sum,'RUR',@in_date,null,null,@doc_name,N) if @flag <> 1 begin .UPDATE_SUBC(D,'bank_account',@bank_acc_id) end else begin .UPDATE_SUBC(C,'bank_account',@bank_acc_id) end .SUBC_CHECK if @calc_sum >0 and @calc_sum is not null begin select @partner_id=null select @partner_id=(select b.partner_id from t_banks b, t_bank_accounts ba where ba.id=@bank_acc_id and ba.bank_id=b.id and .ITEMS_EXISTS_BY_TYPE(b.partner_id,'PARTNERS_JUR')) if @partner_id is null begin select @ms='Не задано юр.лицо-банк для депозитного счета № '+(select bank_account_no from t_bank_accounts where id=@bank_acc_id) .EXIT_MESSAGE(@ms) end select @saldo_7610 = (select sum(isnull((-1)*t_oper_list.sum_bal * t_oper_list.deb_or_cred,0)) from t_operations, t_oper_list, t_oper_subconto s1, t_oper_subconto s2 where t_operations.partner2plan_id = @pp_id and t_operations.id = t_oper_list.head_id and t_oper_list.acc_id = @acc_7610_id and s1.id = t_oper_list.id and s2.id = t_oper_list.id and s2.subconto_type_id = @subc1_type_id and s2.item_id = @partner_id and s1.subconto_type_id = @subc_type_id and s1.item_id = @bank_acc_id) select @cur_id = t_bank_accounts.bank_acc_cur_id from t_bank_accounts where t_bank_accounts.id = @bank_acc_id select @cur_rate = t_rates.rate_value from t_rates where t_rates.cur_id = @cur_id and t_rates.rate_date = (select max(t_rates.rate_date) from t_rates where cur_id = @cur_id and t_rates.rate_date <= @in_date and .ITEMS_EXISTS(t_rates.id)) and .ITEMS_EXISTS(t_rates.id) select @oper_sum = (@calc_sum + @saldo_7610) * @cur_rate - @saldo_7610 select @oper_sum = round(@oper_sum,2) select @deb_acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'76.10') select @cred_acc_id=.SD_ACCID_FROM_EFFNO(@plan_id,'91.3') select @doc_name='Начисление задолженности по получению процентного дохода по депозитному счету' .OPERATION(@owner_id,@plan_id,@in_date,@deb_acc_id,@cred_acc_id,@oper_sum,'RUR',@in_date,null,null,@doc_name,N) .UPDATE_SUBC(D,'partners',@partner_id) .UPDATE_SUBC(D,'bank_account',@bank_acc_id) .SUBC_CHECK end end fetch items_cur into @bank_acc_id, @calc_sum, @sum_accur end close items_cur .DEALLOCATE items_cur -------------------------------- .END $ENDTEXT(16183028) $ENDACTION $STATE2ACTION(BEG.ACTION1) state=BEG action=ACTION1 $ENDSTATE2ACTION $STATE2ACTION(ED.ACTION2) state=ED action=ACTION2 $ENDSTATE2ACTION $STATE2ACTION(ED.ACTION3) state=ED action=ACTION3 $ENDSTATE2ACTION $STATE2ACTION(ED.ACTION5) state=ED action=ACTION5 $ENDSTATE2ACTION $STATE2ACTION(ED.ACTION6) state=ED action=ACTION6 $ENDSTATE2ACTION $STATE2ACTION(ED.FORM1) state=ED action=FORM1 $ENDSTATE2ACTION $STATE2ACTION(ED.FORM2) state=ED action=FORM2 $ENDSTATE2ACTION $STATE2ACTION(ED.FORM3) state=ED action=FORM3 $ENDSTATE2ACTION $STATE2ACTION(OP_END.ACTION4) state=OP_END action=ACTION4 $ENDSTATE2ACTION $STATE2ACTION(OP_END.FORM1) state=OP_END action=FORM1 $ENDSTATE2ACTION $STATE2ACTION(OP_END.FORM2) state=OP_END action=FORM2 $ENDSTATE2ACTION $STATE2ACTION(OP_END.FORM3) state=OP_END action=FORM3 $ENDSTATE2ACTION $STATE2PROP(BEG.COMMENT) state=BEG prop=COMMENT enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(BEG.DAYS_QTY) state=BEG prop=DAYS_QTY enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(BEG.INITIATOR_ID) state=BEG prop=INITIATOR_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(BEG.IN_DATE) state=BEG prop=IN_DATE enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(BEG.IN_NO) state=BEG prop=IN_NO enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(BEG.OWNER_ID) state=BEG prop=OWNER_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.COMMENT) state=ED prop=COMMENT enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.DAYS_QTY) state=ED prop=DAYS_QTY enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.INITIATOR_ID) state=ED prop=INITIATOR_ID enable=1 mandatory=0 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.IN_DATE) state=ED prop=IN_DATE enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.IN_NO) state=ED prop=IN_NO enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(ED.OWNER_ID) state=ED prop=OWNER_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $ENDDOC $DOC(SD_ACCUR_OVERVALUE_LIST) name=Валютные счета для переоценки class=1 product=ALD_FUND name_formula=null remark_formula=null $STATE(CREATE) name=Создан class=0 $ENDSTATE $STATE(NEW) name=Начальный class=1 $ENDSTATE $PROP(BANK_ACC_ID) name=Депозитный счет field_name=bank_acc_id table_name=ts_sd_deposit_overvalue_list field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=2 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(CALC_SUM) name=Начисленный процент field_name=calc_sum table_name=ts_sd_deposit_overvalue_list field_type=money field_length=8 field_scale=4 field_prec=19 page=1 order=3 init_class=1 init_formula=0 unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(BAL_SUM) name=Сумма вклада field_name=bal_sum table_name=ts_sd_deposit_overvalue_list field_type=money field_length=8 field_scale=4 field_prec=19 page=1 order=4 init_class=1 init_formula=0 unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(DOC_ID) name=Документ переоценки field_name=doc_id table_name=ts_sd_deposit_overvalue_list field_type=numeric field_length=9 field_scale=0 field_prec=18 page=1 order=1 init_class=0 init_formula=null unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $PROP(BAL_SUM_CUR) name=Балансовая сумма в валюте field_name=bal_sum_cur table_name=ts_sd_deposit_overvalue_list field_type=money field_length=8 field_scale=4 field_prec=19 page=1 order=5 init_class=null init_formula=0 unique_index=null numerator=null import_type=null import_table=null import_field=null import_where=null ref_table=null ref_key=null ref_display=null ref_alias=null ref_where=null $ENDPROP $RELATION(REL1) class=0 type=BANK_ACCOUNTS form=null prop=BANK_ACC_ID idname=null order=1 $ENDRELATION $FORM(FORM1) name=Редактор class=5 filter=null target_state= uo=uo_edit dw=d_accur_overvalue_tab_edit procedure=ap_50000000000389342 patterns=GENERIC_VIEW_ITEM_O user_define=1 isvisible=1 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183031) create procedure dbo.%PROC% @sid varchar(30) = null .ARGLIST_FILTER as .BEGIN('N') .CHECK_USER .CHECK_VIEW .ARGCONVERT_FILTER if @id = -1 begin .VIEW_INIT end else begin .VIEW_ITEM end .END $ENDTEXT(16183031) $ACTION2RELATION(REL1.BANK_ACCOUNT_NO) relation=REL1 where=null prop=BANK_ACCOUNT_NO order=16 alias=bank_account_no $ENDACTION2RELATION $ACTION2RELATION(REL1.BANK_NAME) relation=REL1 where=null prop=BANK_NAME order=17 alias=bank_name $ENDACTION2RELATION $FILTER(DOC_ID) type=11 label=Документ переоценки prop=DOC_ID arg_code=null arg_type=null arg_length=null arg_prec=null arg_scale=null $ENDFILTER $CALC(OWNER_ID_S) class=1 type=varchar calc_lenght=30 calc_prec=null calc_scale=null formula=(select owner_id from ts_sd_deposit_overvalue where id=@doc_id) label=Фонд order=1 $ENDCALC $ENDFORM $FORM(FORM2) name=Список валютных счетов class=4 filter=null target_state= uo=uo_list dw=d_accur_overvalue_tab_list procedure=ap_50000000000389346 patterns=GENERIC_VIEW_LIST user_define=1 isvisible=1 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183031) create procedure dbo.%PROC% @sid varchar(30) = null .ARGLIST_FILTER as .BEGIN('N') .CHECK_USER .CHECK_VIEW .ARGCONVERT_FILTER .VIEW_LIST .END $ENDTEXT(16183031) $ACTION2RELATION(REL1.BANK_ACCOUNT_NO) relation=REL1 where=null prop=BANK_ACCOUNT_NO order=16 alias=bank_account_no $ENDACTION2RELATION $ACTION2RELATION(REL1.BANK_NAME) relation=REL1 where=null prop=BANK_NAME order=17 alias=bank_name $ENDACTION2RELATION $FILTER(DOC_ID) type=11 label=ID док prop=DOC_ID arg_code=null arg_type=null arg_length=null arg_prec=null arg_scale=null $ENDFILTER $ENDFORM $ACTION(ACTION1) name=Добавить class=1 form=FORM1 target_state=CREATE procedure=ap_50000000000389349 patterns=GENERIC_INSERT_O user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=2167 height=696 proc_text=$TEXT(16183031) create procedure dbo.%PROC% @sid varchar(30) = null, .ARGLIST as .BEGIN('N') .CHECK_USER .CHECK_INSERT .ARGCONVERT .INIT_VARS if exists(select 1 from ts_sd_deposit_overvalue_list t where t.doc_id=@doc_id and t.id<>@id and t.bank_acc_id=@bank_acc_id) .EXIT_MESSAGE('Данный депозит уже выбран') if upper(.ITEM_STATE_CODE(@doc_id)) not in ('ED') .EXIT_MESSAGE('Действие невозможно для подтвержденной операции') select @calc_sum=round(@calc_sum,2) begin tran .INSERT_ITEMS .INSERT .UPDATE_STATE /* exec ap_get_rate4overvalue @id, @rate_date if @@error != 0 begin rollback tran return end */ commit tran select sid = convert(varchar, @id) .END $ENDTEXT(16183031) $ENDACTION $ACTION(ACTION2) name=Изменить class=2 form=FORM1 target_state=null procedure=ap_50000000000389350 patterns=GENERIC_UPDATE user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=2167 height=684 proc_text=$TEXT(16183033) create procedure dbo.%PROC% @sid varchar(30) = null, .ARGLIST as .BEGIN('N') .CHECK_USER .CHECK_UPDATE .ARGCONVERT if exists(select 1 from ts_sd_deposit_overvalue_list t where t.doc_id=@doc_id and t.id<>@id and t.bank_acc_id=@bank_acc_id) .EXIT_MESSAGE('Данный депозит уже выбран') if upper(.ITEM_STATE_CODE(@doc_id)) not in ('ED') .EXIT_MESSAGE('Действие невозможно для подтвержденной операции') select @calc_sum=round(@calc_sum,2) begin tran .UPDATE_ITEMS .UPDATE .UPDATE_STATE commit tran .END $ENDTEXT(16183033) $ENDACTION $ACTION(ACTION3) name=Удалить class=9 form=null target_state=null procedure=ap_50000000000389351 patterns=GENERIC_MOVE user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183033) create procedure dbo.%PROC% @sid varchar(30) = null as .BEGIN('N') .CHECK_USER .CHECK_UPDATE begin tran .GET_PROPS if upper(.ITEM_STATE_CODE(@doc_id)) not in ('ED') .EXIT_MESSAGE('Действие невозможно для подтвержденной операции') .TYPE_DELETE commit tran .END $ENDTEXT(16183033) $ENDACTION $ACTION(ACTION4) name=Удалить все class=9 form=null target_state=null procedure=ap_50000000000389352 patterns=GENERIC_MOVE user_define=0 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183033) create procedure dbo.%PROC% @sid varchar(30) = null as .BEGIN('N') .CHECK_USER .CHECK_UPDATE begin tran .GET_PROPS if upper(.ITEM_STATE_CODE(@doc_id)) not in ('ED') .EXIT_MESSAGE('Действие невозможно для подтвержденной операции') delete t_items from ts_sd_deposit_overvalue_list t where t.id=t_items.id and t.doc_id=@doc_id delete ts_sd_deposit_overvalue_list where doc_id=@doc_id commit tran .END $ENDTEXT(16183033) $ENDACTION $ACTION(GET_CALC_SUM) name=Расчет class=9 form=null target_state=null procedure=ap_50000000000389353 patterns=GENERIC_MOVE user_define=1 isvisible=0 istab=0 posx=0 posy=0 width=0 height=0 proc_text=$TEXT(16183033) create procedure dbo.%PROC% @sid varchar(30) = null as .BEGIN('N') .CHECK_USER .CHECK_UPDATE .GET_PROPS declare @in_date datetime, @owner_id numeric, @days_qty int if upper(.ITEM_STATE_CODE(@doc_id)) not in ('ED') .EXIT_MESSAGE('Действие невозможно для подтвержденной операции') select @in_date=in_date, @owner_id=owner_id, @days_qty=days_qty from ts_sd_deposit_overvalue where id=@doc_id if isnull(@days_qty,0)=0 select @days_qty=1 begin tran if (select t_bank_accounts.acc_type_id from t_bank_accounts where t_bank_accounts.id = @bank_acc_id) = 30 begin .GET_DEPOSIT_RATE(@bank_acc_id,@owner_id,@in_date,@bal_sum_cur,@days_qty,1,@calc_sum) end .UPDATE -- Не включаем в список если дата окончания депозита меньше даты документа Переоценка -- /*if isnull(@calc_sum,0)=-1 begin .TYPE_DELETE end */ commit tran .END $ENDTEXT(16183033) $ENDACTION $STATE2ACTION(CREATE.ACTION2) state=CREATE action=ACTION2 $ENDSTATE2ACTION $STATE2ACTION(CREATE.ACTION3) state=CREATE action=ACTION3 $ENDSTATE2ACTION $STATE2ACTION(CREATE.ACTION4) state=CREATE action=ACTION4 $ENDSTATE2ACTION $STATE2ACTION(CREATE.FORM1) state=CREATE action=FORM1 $ENDSTATE2ACTION $STATE2ACTION(CREATE.FORM2) state=CREATE action=FORM2 $ENDSTATE2ACTION $STATE2ACTION(CREATE.GET_CALC_SUM) state=CREATE action=GET_CALC_SUM $ENDSTATE2ACTION $STATE2ACTION(NEW.ACTION1) state=NEW action=ACTION1 $ENDSTATE2ACTION $STATE2PROP(CREATE.BAL_SUM) state=CREATE prop=BAL_SUM enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(CREATE.BANK_ACC_ID) state=CREATE prop=BANK_ACC_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(CREATE.CALC_SUM) state=CREATE prop=CALC_SUM enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(CREATE.DOC_ID) state=CREATE prop=DOC_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.BAL_SUM) state=NEW prop=BAL_SUM enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.BANK_ACC_ID) state=NEW prop=BANK_ACC_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.CALC_SUM) state=NEW prop=CALC_SUM enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $STATE2PROP(NEW.DOC_ID) state=NEW prop=DOC_ID enable=1 mandatory=1 visible=1 $ENDSTATE2PROP $ENDDOC