46 lines
1.6 KiB
Python
46 lines
1.6 KiB
Python
import os
|
|
os.environ['DB_HOST'] = '192.168.0.61'
|
|
os.environ['DB_PORT'] = '55432'
|
|
os.environ['DB_NAME'] = 'njts_acct'
|
|
os.environ['DB_USER'] = 'njts_app'
|
|
os.environ['DB_PASSWORD'] = 'njts_app2025'
|
|
|
|
from app.core.database import get_connection
|
|
|
|
# SQLファイルを読み込んで実行
|
|
with open('sql/insert_opening_balances_2025.sql', 'r', encoding='utf-8') as f:
|
|
sql_content = f.read()
|
|
|
|
# セミコロンで分割して実行
|
|
statements = [s.strip() for s in sql_content.split(';') if s.strip() and not s.strip().startswith('--')]
|
|
|
|
with get_connection() as conn:
|
|
with conn.cursor() as cur:
|
|
for statement in statements:
|
|
if statement.strip():
|
|
try:
|
|
cur.execute(statement)
|
|
print(f"✓ 実行成功")
|
|
except Exception as e:
|
|
print(f"✗ エラー: {e}")
|
|
|
|
conn.commit()
|
|
print("\n前期残高データを更新しました。")
|
|
|
|
# 確認
|
|
cur.execute("""
|
|
SELECT
|
|
a.account_code,
|
|
a.account_name,
|
|
ob.opening_debit,
|
|
ob.opening_credit
|
|
FROM opening_balances ob
|
|
JOIN accounts a ON ob.account_id = a.account_id
|
|
WHERE ob.fiscal_year = 2025
|
|
ORDER BY a.account_code
|
|
""")
|
|
|
|
print("\n【2025年度 前期残高一覧】")
|
|
for row in cur.fetchall():
|
|
print(f"{row['account_code']} {row['account_name']:20s} 借方:{row['opening_debit']:>12,} 貸方:{row['opening_credit']:>12,}")
|