From 800331ff8cf7b0ea431bd30b420dbd5d2290e21b Mon Sep 17 00:00:00 2001 From: bn_user Date: Mon, 1 Sep 2025 14:25:18 +0000 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20dags/OSV.py?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dags/OSV.py | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/dags/OSV.py b/dags/OSV.py index ce54402..c84873c 100644 --- a/dags/OSV.py +++ b/dags/OSV.py @@ -55,6 +55,62 @@ def read_data_1C(**kwargs): engine = get_db_engine() table_name = 'oborotno_salbdovaya_vedomostb' + field_mapping = { + # Основные поля + 'Счет': 'schet', + 'Субконто1': 'subkonto1', + 'Субконто2': 'subkonto2', + 'Субконто3': 'subkonto3', + 'Организация': 'organizaciya', + 'Валюта': 'valyuta', + + # Суммовые остатки и обороты + 'СуммаНачальныйОстаток': 'summa_nachalnyy_ostatok', + 'СуммаНачальныйОстатокДт': 'summa_nachalnyy_ostatok_dt', + 'СуммаНачальныйОстатокКт': 'summa_nachalnyy_ostatok_kt', + 'СуммаНачальныйРазвернутыйОстатокДт': 'summa_nachalnyy_razvernutyy_ostatok_dt', + 'СуммаНачальныйРазвернутыйОстатокКт': 'summa_nachalnyy_razvernutyy_ostatok_kt', + 'СуммаОборот': 'summa_oborot', + 'СуммаОборotДт': 'summa_oborot_dt', + 'СуммаОборotКт': 'summa_oborot_kt', + 'СуммаКонечныйОстаток': 'summa_konechnyy_ostatok', + 'СуммаКонечныйОстатокДт': 'summa_konechnyy_ostatok_dt', + 'СуммаКонечныйОстатокКт': 'summa_konechnyy_ostatok_kt', + 'СуммаКонечныйРазвернутыйОстатокДт': 'summa_konechnyy_razvernutyy_ostatok_dt', + 'СуммаКонечныйРазвернутыйОстатокКт': 'summa_konechnyy_razvernutyy_ostatok_kt', + + # Валютные остатки и обороты + 'ВалютнаяСуммаНачальныйОстаток': 'valyutnaya_summa_nachalnyy_ostatok', + 'ВалютнаяСуммаНачальныйОстатокДт': 'valyutnaya_summa_nachalnyy_ostatok_dt', + 'ВалютнаяСуммаНачальныйОстатокКт': 'valyutnaya_summa_nachalnyy_ostatok_kt', + 'ВалютнаяСуммаНачальныйРазвернутыйОстатокДт': 'valyutnaya_summa_nachalnyy_razvernutyy_ostatok_dt', + 'ВалютнаяСумmaНачальныйРазвернутыйОстатокКт': 'valyutnaya_summa_nachalnyy_razvernutyy_ostatok_kt', + 'ВалютнаяСумmaОборот': 'valyutnaya_summa_oborot', + 'ВалютнаяСумmaОборotДт': 'valyutnaya_summa_oborot_dt', + 'ВалютнаяСумmaОборotКт': 'valyutnaya_summa_oborot_kt', + 'ВалютнаяСумmaКонечныйОстаток': 'valyutnaya_summa_konechnyy_ostatok', + 'ВалютнаяСумmaКонечныйОстатокДт': 'valyutnaya_summa_konechnyy_ostatok_dt', + 'ВалютнаяСумmaКонечныйОстатокКт': 'valyutnaya_summa_konechnyy_ostatok_kt', + 'ВалютнаяСумmaКонечныйРазвернутыйОстатокДт': 'valyutnaya_summa_konechnyy_razvernutyy_ostatok_dt', + 'ВалютнаяСумmaКонечныйРазвернутыйОстатокКт': 'valyutnaya_summa_konechnyy_razvernutyy_ostatok_kt', + + # Количественные остатки и обороты + 'КоличествоНачальныйОстаток': 'kolichestvo_nachalnyy_ostatok', + 'КоличествоНачальныйОстатокДт': 'kolichestvo_nachalnyy_ostatok_dt', + 'КоличествоНачальныйОстатокКт': 'kolichestvo_nachalnyy_ostatok_kt', + 'КоличествоНачальныйРазвернутыйОстатокДт': 'kolichestvo_nachalnyy_razvernutyy_ostatok_dt', + 'КоличествоНачальныйРазвернутыйОстатокКт': 'kolichestvo_nachalnyy_razvernutyy_ostatok_kt', + 'КоличествоОборот': 'kolichestvo_oborot', + 'КоличествоОборотДт': 'kolichestvo_oborot_dt', + 'КоличествоОборотКт': 'kolichestvo_oborot_kt', + 'КоличествоКонечныйОстаток': 'kolichestvo_konechnyy_ostatok', + 'КоличествоКонечныйОстатокДт': 'kolichestvo_konechnyy_ostatok_dt', + 'КоличествоКонечныйОстатокКт': 'kolichestvo_konechnyy_ostatok_kt', + 'КоличествоКонечныйРазвернутыйОстатокДт': 'kolichestvo_konechnyy_razvernutyy_ostatok_dt', + 'КоличествоКонечныйРазвернутыйОстатокКт': 'kolichestvo_konechnyy_razvernutyy_ostatok_kt' +} + + df = df.rename(columns=field_mapping) with engine.begin() as conn: if not df.empty: conn.execute(f"CREATE TEMP TABLE temp_{table_name} AS SELECT * FROM public.{table_name} WHERE 1 = 0")