consolidator

Форк
0
/
generalDebug.py 
61 строка · 3.2 Кб
1
import glob
2
import pandas as pd
3
from ModuleMaker import ModuleMaker
4
from OraWorker import OraWorker
5

6

7

8
def converter(row:pd.Series)->pd.Series:
9
    # row["Доп параметр2"]=float(str(row["Доп параметр2"]).replace(",","."))
10
    row["Код"] = row["Вид материала в SAP ERP"][:4]
11
    return row
12

13
def ntd_convert(row:pd.Series,ntd_cols:list,ora:OraWorker)->pd.Series:
14
    ntd = "".join([str(row[key]) for key in ntd_cols])
15
    # product_up = ora.product_check("*",row["ID в SAP ERP VMZ"])
16
    row["НТД качества"]=ntd.replace("nan","")
17
    # row["Продукт УП"] = product_up[0]
18
    return row
19

20
def get_nearest(guidName:str,query:str,nearestColumn:str,nearestValue:float,valueColumn:str):
21
    df = pd.read_csv(guidName,encoding="windows-1251",delimiter=";")
22
    df=df.apply(converter,axis=1)
23
    df = df.query(query)
24
    df_res = df.iloc[(df[nearestColumn]-nearestValue).abs().argsort()[:1]]
25
    return df_res[valueColumn].values[0]
26

27
if __name__=="__main__":
28
    
29
    r = ModuleMaker.make_from_file("handlers2\\module_pattern.py","key","ww_test_module")
30
    print(r)
31
    
32
    # "ID в SAP ERP VMZ","Полное наименование материала","Вид материала в SAP ERP","Производство"
33
    # cols1 = ["ID в SAP ERP VMZ","Полное наименование материала","Вид материала в SAP ERP","Производство"]
34
    # path_pattern="D:\\work\\Укрупнение\\current\\data\\2*\\*.xlsx"
35
    # exclude_pattern = "нение_"
36
    # files=[f for f in glob.glob(path_pattern) if exclude_pattern not in f] if exclude_pattern is not None else [f for f in glob.glob(path_pattern)]
37
    # frames = []
38
    # ora = OraWorker("sapnwc","sapnwc","172.17.80.116/scpora",".\\ora")
39
    # for f in files:
40
    #     try:
41
    #         xl  = pd.ExcelFile(f)
42
    #         for sheet in xl.sheet_names:
43
    #             df = pd.read_excel(f,sheet_name=sheet)
44
    #             df["file"]=f
45
    #             df["sheet"]=sheet
46
    #             ntd_cols_q = [col for col in df.columns if "НТД" in col and "ачества" in col and "*" not in col]
47
    #             ntd_cols_cover = [col for col in df.columns if "НТД" in col and "окрытия" in col and "3" not in col]
48
    #             steel_cols = [col for col in df.columns if "стал" in col or "проч" in col]
49
    #             if not df.empty: 
50
    #                 df = df.apply(lambda r: ntd_convert(r,ntd_cols_q,ora),axis=1)
51
    #                 frames.append(df[cols1+["НТД качества"]+steel_cols+ntd_cols_cover+["file","sheet"]])
52
    #                 print(f"{f}[{sheet}] added")
53
    #     except Exception as exp1:
54
    #         print(f"{f} failed: {exp1}")
55
    # result=pd.concat(frames)
56
    # result = result.drop_duplicates()
57
    # result = result.apply(converter,axis=1)
58
    # ntd_cols_cover = [col for col in result.columns if "НТД" in col and "покрытия" in col and "3" not in col]
59
    # steel_cols = [col for col in df.columns if "стал" in col or "проч" in col]
60
    # ora.close()
61
    # result[cols1+["Код","НТД качества"]+steel_cols+ntd_cols_cover+["file","sheet"]].to_excel("output\\VM_Productions3.xlsx",index=False)
62
            
63
    
64
    

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.