Advertisement
ALEXANDAR_GEORGIEV

table_da_automatic

Nov 28th, 2022 (edited)
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 24.95 KB | Source Code | 0 0
  1. import tkinter as tk
  2.  
  3. title = tk.Tk()
  4. title.title('Нематериални активи')
  5. title.geometry('1440x900+200+150')  # 1060
  6. title.resizable(True, True)
  7. title.attributes('-topmost', 'true')
  8. tv_frame = tk.Frame(title, bg='blue')
  9. tv_frame.pack(side="top", fill="both", expand=True)
  10.  
  11. col_0 = col_1 = col_2 = col_3 = col_4 = dict
  12. row_0 = row_1 = row_2 = row_3 = dict
  13. val_0 = val_1 = val_2 = val_3 = val_4 = tk.Label()
  14.  
  15. da = {'row_0': {'col_0': {'val_0': 'ПОКАЗАТЕЛИ'}, 'col_1': {'val_1': 'Отчетна стойност\nна нетекущите активи'}, 'col_2': {'val_2': ''}, 'col_3': {'val_3': ''}, 'col_4': {'val_4': ''}, 'col_5': {'val_5': ''}, 'col_6': {'val_6': ''}, 'col_7': {'val_7': ''}, 'col_8': {'val_8': 'Амортизации'}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': 'Балансова\nстойност\nв края'}},
  16.       'row_1': {'col_0': {'val_0': ''}, 'col_1': {'val_1': 'В началото\nна периода'}, 'col_2': {'val_2': 'Постъпили\nпрез периода'}, 'col_3': {'val_3': 'Излезли\nпрез периода'}, 'col_4': {'val_4': 'В края на\nпериода'}, 'col_5': {'val_5': 'Преоценка в\nувеличение'}, 'col_6': {'val_6': 'Преоценка в\n намаление'}, 'col_7': {'val_7': 'Преоценена\nстойност'}, 'col_8': {'val_8': 'В началото\nна периода'}, 'col_9': {'val_9': 'Начислена\nпрез периода'}, 'col_10': {'val_10': 'Отписана\nпрез периода'}, 'col_11': {'val_11': 'В края на\nпериода'}, 'col_12': {'val_12': 'Преоценка в\nувеличение'}, 'col_13': {'val_13': 'Преоценка в\nнамаление'}, 'col_14': {'val_14': 'Преоценена\nамортизация'}, 'col_15': {'val_15': ''}},
  17.       'row_2': {'col_0': {'val_0': 'а'}, 'col_1': {'val_1': '1'}, 'col_2': {'val_2': '2'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4 = 1+2-3'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7 = 4+5-6'}, 'col_8': {'val_8': '8'}, 'col_9': {'val_9': '9'}, 'col_10': {'val_10': '10'}, 'col_11': {'val_11': '11 = 8+9-10'}, 'col_12': {'val_12': '12'}, 'col_13': {'val_13': '13'}, 'col_14': {'val_14': '14 = 11+12-13'}, 'col_15': {'val_15': '15 = 7-14'}},
  18.       'row_3': {'col_0': {'val_0': 'I. Нематериални активи'}, 'col_1': {'val_1': ''}, 'col_2': {'val_2': ''}, 'col_3': {'val_3': ''}, 'col_4': {'val_4': ''}, 'col_5': {'val_5': ''}, 'col_6': {'val_6': ''}, 'col_7': {'val_7': ''}, 'col_8': {'val_8': ''}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': ''}},
  19.       'row_4': {'col_0': {'val_0': '  1. Продукти от развойна дейност'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': '8'}, 'col_9': {'val_9': '9'}, 'col_10': {'val_10': '10'}, 'col_11': {'val_11': '11'}, 'col_12': {'val_12': '12'}, 'col_13': {'val_13': '13'}, 'col_14': {'val_14': '14'}, 'col_15': {'val_15': '15'}},
  20.       'row_5': {'col_0': {'val_0': '  2. Концесии, патенти, търговски\nмарки, програмни продукти и\nдруги подобни права и активи'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': '8'}, 'col_9': {'val_9': '9'}, 'col_10': {'val_10': '10'}, 'col_11': {'val_11': '11'}, 'col_12': {'val_12': '12'}, 'col_13': {'val_13': '13'}, 'col_14': {'val_14': '14'}, 'col_15': {'val_15': '15'}},
  21.       'row_6': {'col_0': {'val_0': '  3. Търговска репутация'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': '8'}, 'col_9': {'val_9': '9'}, 'col_10': {'val_10': '10'}, 'col_11': {'val_11': '11'}, 'col_12': {'val_12': '12'}, 'col_13': {'val_13': '13'}, 'col_14': {'val_14': '14'}, 'col_15': {'val_15': '15'}},
  22.       'row_7': {'col_0': {'val_0': '  4. Предоставени аванси и нематериални\nактиви в процес на изграждане'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': 'x'}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': '15'}},
  23.       'row_8': {'col_0': {'val_0': '      - в т.ч.: предоставени аванси'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': 'x'}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': '15'}},
  24.       'row_9': {'col_0': {'val_0': 'Общо за група I.'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': '8'}, 'col_9': {'val_9': '9'}, 'col_10': {'val_10': '10'}, 'col_11': {'val_11': '11'}, 'col_12': {'val_12': '12'}, 'col_13': {'val_13': '13'}, 'col_14': {'val_14': '14'}, 'col_15': {'val_15': '15'}},
  25.       'row_10': {'col_0': {'val_0': 'II. Материални дълготрайни активи'}, 'col_1': {'val_1': ''}, 'col_2': {'val_2': ''}, 'col_3': {'val_3': ''}, 'col_4': {'val_4': ''}, 'col_5': {'val_5': ''}, 'col_6': {'val_6': ''}, 'col_7': {'val_7': ''}, 'col_8': {'val_8': ''}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': ''}},
  26.       'row_11': {'col_0': {'val_0': '  1. Земи и сгради, включително права в т.ч.:'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': '8'}, 'col_9': {'val_9': '9'}, 'col_10': {'val_10': '10'}, 'col_11': {'val_11': '11'}, 'col_12': {'val_12': '12'}, 'col_13': {'val_13': '13'}, 'col_14': {'val_14': '14'}, 'col_15': {'val_15': '15'}},
  27.       'row_12': {'col_0': {'val_0': '      - земи'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': ' '}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': '15'}},
  28.       'row_13': {'col_0': {'val_0': '      - подобрения върху земите'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': '8'}, 'col_9': {'val_9': '9'}, 'col_10': {'val_10': '10'}, 'col_11': {'val_11': '11'}, 'col_12': {'val_12': '12'}, 'col_13': {'val_13': '13'}, 'col_14': {'val_14': '14'}, 'col_15': {'val_15': '15'}},
  29.       'row_14': {'col_0': {'val_0': '      - сгради'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': '8'}, 'col_9': {'val_9': '9'}, 'col_10': {'val_10': '10'}, 'col_11': {'val_11': '11'}, 'col_12': {'val_12': '12'}, 'col_13': {'val_13': '13'}, 'col_14': {'val_14': '14'}, 'col_15': {'val_15': '15'}},
  30.       'row_15': {'col_0': {'val_0': '  2. Машини, производствено оборудване\n и апаратура'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': '8'}, 'col_9': {'val_9': '9'}, 'col_10': {'val_10': '10'}, 'col_11': {'val_11': '11'}, 'col_12': {'val_12': '12'}, 'col_13': {'val_13': '13'}, 'col_14': {'val_14': '14'}, 'col_15': {'val_15': '15'}},
  31.       'row_16': {'col_0': {'val_0': '  3. Съоръжения и други'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': '8'}, 'col_9': {'val_9': '9'}, 'col_10': {'val_10': '10'}, 'col_11': {'val_11': '11'}, 'col_12': {'val_12': '12'}, 'col_13': {'val_13': '13'}, 'col_14': {'val_14': '14'}, 'col_15': {'val_15': '15'}},
  32.       'row_17': {'col_0': {'val_0': '      - в т.ч.: транспортни средства'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': '8'}, 'col_9': {'val_9': '9'}, 'col_10': {'val_10': '10'}, 'col_11': {'val_11': '11'}, 'col_12': {'val_12': '12'}, 'col_13': {'val_13': '13'}, 'col_14': {'val_14': '14'}, 'col_15': {'val_15': '15'}},
  33.       'row_18': {'col_0': {'val_0': '  4. Предоставени аванси и дълготрайни мате-\nриални активи в процес на изграждане'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': 'x'}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': '15'}},
  34.       'row_19': {'col_0': {'val_0': '      - в т.ч.: предоставени аванси'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': 'x'}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': '15'}},
  35.       'row_20': {'col_0': {'val_0': 'Общо за група II.'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': '8'}, 'col_9': {'val_9': '9'}, 'col_10': {'val_10': '10'}, 'col_11': {'val_11': '11'}, 'col_12': {'val_12': '12'}, 'col_13': {'val_13': '13'}, 'col_14': {'val_14': '14'}, 'col_15': {'val_15': '15'}},
  36.       'row_21': {'col_0': {'val_0': 'III. Дългосрочни финансови активи'}, 'col_1': {'val_1': ''}, 'col_2': {'val_2': ''}, 'col_3': {'val_3': ''}, 'col_4': {'val_4': ''}, 'col_5': {'val_5': ''}, 'col_6': {'val_6': ''}, 'col_7': {'val_7': ''}, 'col_8': {'val_8': ''}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': ''}},
  37.       'row_22': {'col_0': {'val_0': '  1. Акции и дялове в предприятия от група'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': 'x'}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': '15'}},
  38.       'row_23': {'col_0': {'val_0': '  2. Предоставени заеми на предприятия\n от група'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': 'x'}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': '15'}},
  39.       'row_24': {'col_0': {'val_0': '  3. Акции и дялове в асоциирани и\n смесени предприятия'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': 'x'}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': '15'}},
  40.       'row_25': {'col_0': {'val_0': '  4. Предоставени заеми, свързани с\nасоциирани и смесени предприятия'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': 'x'}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': '15'}},
  41.       'row_26': {'col_0': {'val_0': '  5. Дългосрочни инвестиции\n(инвестиционни имоти)'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': '8'}, 'col_9': {'val_9': '9'}, 'col_10': {'val_10': '10'}, 'col_11': {'val_11': '11'}, 'col_12': {'val_12': '12'}, 'col_13': {'val_13': '13'}, 'col_14': {'val_14': '14'}, 'col_15': {'val_15': '15'}},
  42.       'row_27': {'col_0': {'val_0': '  6. Други заеми'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': 'x'}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': '15'}},
  43.       'row_28': {'col_0': {'val_0': '  7. Изкупени собствени акции'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': 'x'}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': '15'}},
  44.       'row_29': {'col_0': {'val_0': 'Общо за група III.'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': '8'}, 'col_9': {'val_9': '9'}, 'col_10': {'val_10': '10'}, 'col_11': {'val_11': '11'}, 'col_12': {'val_12': '12'}, 'col_13': {'val_13': '13'}, 'col_14': {'val_14': '14'}, 'col_15': {'val_15': '15'}},
  45.       'row_30': {'col_0': {'val_0': 'IV. Отсрочени данъци'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': 'x'}, 'col_9': {'val_9': ''}, 'col_10': {'val_10': ''}, 'col_11': {'val_11': ''}, 'col_12': {'val_12': ''}, 'col_13': {'val_13': ''}, 'col_14': {'val_14': ''}, 'col_15': {'val_15': '15'}},
  46.       'row_31': {'col_0': {'val_0': 'Общо нетекущи (дълготрайни) активи'}, 'col_1': {'val_1': f'n'}, 'col_2': {'val_2': f'n'}, 'col_3': {'val_3': '3'}, 'col_4': {'val_4': '4'}, 'col_5': {'val_5': '5'}, 'col_6': {'val_6': '6'}, 'col_7': {'val_7': '7'}, 'col_8': {'val_8': '8'}, 'col_9': {'val_9': '9'}, 'col_10': {'val_10': '10'}, 'col_11': {'val_11': '11'}, 'col_12': {'val_12': '12'}, 'col_13': {'val_13': '13'}, 'col_14': {'val_14': '14'}, 'col_15': {'val_15': '15'}},
  47.       }
  48. # TODO -> sum_turn_d на сметките, маркирани с 'ДА' и са въведени в form_import_Активи (tab_1). Ако sum_turn_d = 0 -> 'col_2' се маха от речника
  49. # TODO -> sum_turn_c на сметките, маркирани с 'ДА' и са въведени в form_import_Активи (tab_1). Ако sum_turn_c = 0 -> 'col_3' се маха от речника
  50. # TODO -> sum_turn_c на сметките, маркирани с 'ДА' и са въведени в form_import_Амортизации (tab_2). Ако sum_turn_c = 0 -> 'col_9' се маха от речника
  51. # TODO -> sum_turn_d на сметките, маркирани с 'ДА' и са въведени в form_import_Амортизации (tab_2). Ако sum_turn_d = 0 -> 'col_10' се маха от речника
  52. # TODO -> НЕСЪОТВЕТСТВАЩО НАЧАЛНО САЛДО С НАЧАЛНОТО САЛДО НА СМЕТКИТЕ В ХИЛЯДИ ЛЕВА!
  53. # НЕСЪОТВЕТСТВИЕТО СЕ ПОПЪЛВА В КОЛОНИ ЗА ПРЕОЦЕНКИ !
  54. # Ако НС > НС на 'open_d' -> разликата в хиляди отива в 'col_6'
  55. # Ако НС < НС на 'open_d' -> разликата в хиляди отива в 'col_5'
  56. # Ако НС > НС на 'open_c' -> разликата в хиляди отива в 'col_13'
  57. # Ако НС < НС на 'open_c' -> разликата в хиляди отива в 'col_12'
  58.  
  59. # TODO  ПРЕОЦЕНКИ
  60. # TODO -> Ако във form_import_Активи_Преоценки в новия речник създаден в тази форма няма sum_turn_d, (tab_3). sum_turn_d = 0 -> 'col_5' се маха от речника
  61. # TODO -> Ако във form_import_Активи_Преоценки в новия речник създаден в тази форма няма sum_turn_c, (tab_3). sum_turn_d = 0 -> 'col_6' се маха от речника
  62. # TODO -> Ако във form_import_Амортизации_Преоценки в новия речник създаден в тази форма няма sum_turn_c, (tab_4). sum_turn_d = 0 -> 'col_12' се маха от речника
  63. # TODO -> Ако във form_import_Амортизации_Преоценки в новия речник създаден в тази форма няма sum_turn_d, (tab_4). sum_turn_d = 0 -> 'col_13' се маха от речника
  64. # TODO -> Ако 'col_5' and 'col_6' ги няма в речника, то 'col_7' се маха от речника
  65. # TODO -> Ако 'col_12' and 'col_13' ги няма в речника, то 'col_14' се маха от речника
  66. # TODO  ПОПЪЛВАНЕ НА РЕЧНИКА
  67. # TODO  АКО ИМА 'col_7' и 'col_14'
  68. # TODO -> 1-во се попълва 'col_7' и 'col_14'
  69. # TODO -> 2-ро се попълва 'col_5' и 'col_6' Ако ги има и 'col_12' и 'col_13' Ако ги има
  70. # TODO -> 3-то се попълва 'col_4' = 'col_7' - 'col_5' + 'col_6'
  71. # TODO -> 4-то се попълва 'col_2' = 'turn_d' - 'col_5'
  72. # TODO -> 5-то се попълва 'col_3' = 'turn_c' - 'col_6'
  73. # TODO -> 6-то се попълва 'col_15' = 'col_14' - 'col_7' or 'col_14' - 'col_4' or 'col_11' - 'col_7' or 'col_11' - 'col_4'
  74. # TODO -> ПЕРА БЕЗ АМОРТИЗАЦИИ
  75. # TODO -> 'col_15' = 'col_7' ако я има or 'col_4'
  76.  
  77. # TODO  АКО НЯМА 'col_7' и 'col_14'
  78. # TODO -> 1-во се попълва 'col_4' = 'sum_close_d'
  79. # TODO -> 1-во се попълва 'col_2' = 'sum_turn_d'
  80. # TODO -> 1-во се попълва 'col_3' = 'sum_turn_c'
  81. # TODO -> 1-во се попълва 'col_1' = 'sum_open_d'
  82. # TODO -> 2-ро се попълва 'col_11' = 'sum_close_c'
  83. # TODO -> 2-ро се попълва 'col_9' = 'sum_turn_c'
  84. # TODO -> 2-ро се попълва 'col_10' = 'sum_turn_d'
  85. # TODO -> 2-ро се попълва 'col_8' = 'sum_open_c'
  86. # TODO -> 3-то се попълва 'col_15' = 'col_11' - 'col_4'
  87.  
  88. # TODO -> ПЕРА БЕЗ АМОРТИЗАЦИИ
  89. # TODO -> 'col_15' = 'col_4'
  90.  
  91. # РЕДОВЕ
  92. # TODO -> ако 'sum_open_d' == 0 and 'sum_turn_d' == 0 and 'sum_turn_c' == 0 на перата, попълнени в Активи (tab_1) -> съответният ред се маха от речника
  93. # TODO -> ако 'total_sum_open_d' == 0 and 'total_sum_turn_d' == 0 and 'total_sum_turn_c' == 0
  94. #           на form Активи(dna) (tab_1) -> съответните редове от 'row_3' до 'row_9' се махат от речника
  95. #           или на form Активи(dma) (tab_1) -> съответните редове от 'row_10' до 'row_20' се махат от речника
  96. #           или на form Активи(dfa) (tab_1) -> съответните редове от 'row_21' до 'row_29' се махат от речника
  97. #           или на form Активи(tax) (tab_1) -> съответния ред от 'row_30' се маха от речника
  98.  
  99. # TODO -> SPAN_COLUMNS
  100. # Всяка махната колона, трябва да намали span_col с 1
  101. # Ако е махната колона от 'col_2' до 'col_7' -> span_col се намалява с 1 само на редове:
  102. #                               'row_3' and 'row_10' and 'row_21'
  103. # Ако е махната колона от 'col_9' до 'col_14' -> span_col се намалява с 1 само на редове:
  104. #                               'row_7', 'col_8' and 'row_8', 'col_8' and 'row_12', 'col_8' and 'row_18', 'col_8' and
  105. #                               'row_19', 'col_8' and 'row_22', 'col_8' and 'row_23', 'col_8' and 'row_24', 'col_8' and
  106. #                               'row_25', 'col_8' and 'row_27', 'col_8' and 'row_28', 'col_8' and 'row_30', 'col_8'
  107.  
  108.  
  109. def create_label(text, row_x, col_y, span_row=1, span_col=1, height=3):
  110.     label = tk.Label(tv_frame, text=text, font=('Times New Roman', 10, 'bold'), bg='white', height=height,
  111.                 anchor='center', fg='black', justify='center')
  112.     label.grid(row=row_x, column=col_y, padx=(1, 1), pady=(1, 1), sticky='nswe', rowspan=span_row, columnspan=span_col)
  113.  
  114.  
  115. def create_table():
  116.     row_n = 0
  117.     span_row = 1
  118.     span_col = 1
  119.     height = 1
  120.     for row in da:  # Редове 'row_1'
  121.         col_n = 0
  122.         for column in da[row]:  # Колони
  123.             for val in da[row][column]:     # val = val_1
  124.                 text = da[row][column][val]
  125.                 if text == '' or text is None:
  126.                     col_n += 1
  127.                     continue
  128.                 elif text == 'ПОКАЗАТЕЛИ' or text == 'Балансова\nстойност\nв края':
  129.                     span_row = 2
  130.                     height = 5
  131.                 elif text == 'Отчетна стойност\nна нетекущите активи' or text == 'Амортизации':
  132.                     span_col = 7
  133.                     height = 2
  134.                 elif (row == 'row_7' and column == 'col_8' and val == 'val_8') or (row == 'row_8' and
  135.                         column == 'col_8' and val == 'val_8') or (row == 'row_12' and column == 'col_8' and
  136.                         val == 'val_8') or (row == 'row_18' and column == 'col_8' and val == 'val_8') or\
  137.                         (row == 'row_19' and column == 'col_8' and val == 'val_8')\
  138.                         or (row == 'row_22' and column == 'col_8' and val == 'val_8')\
  139.                         or (row == 'row_23' and column == 'col_8' and val == 'val_8') or\
  140.                         (row == 'row_24' and column == 'col_8' and val == 'val_8') or (row == 'row_25' and
  141.                         column == 'col_8' and val == 'val_8') or (row == 'row_27' and column == 'col_8' and
  142.                         val == 'val_8') or (row == 'row_28' and column == 'col_8' and val == 'val_8') or\
  143.                         (row == 'row_30' and column == 'col_8' and val == 'val_8'):
  144.                     span_col = 7
  145.                 if row == 'row_1':
  146.                     height = 3
  147.                 if row == 'row_7' or row == 'row_15' or row == 'row_18' or row == 'row_23' or row == 'row_24'\
  148.                         or row == 'row_25' or row == 'row_26':
  149.                     height = 2
  150.                 if row == 'row_3' or row == 'row_10' or row == 'row_21':
  151.                     span_col = 16
  152.                 create_label(text=text, row_x=row_n, col_y=col_n, span_row=span_row, span_col=span_col, height=height)
  153.                 col_n += 1
  154.                 span_col = 1
  155.                 span_row = 1
  156.                 height=1
  157.         row_n += 1
  158.  
  159. create_table()
  160.  
  161. title.mainloop()
  162.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement