def edi_table(listy, delim):
    listy = listy.splitlines()
    # Reformats the data from EDI to tabled lists (this removes first element too,
    # remove "[1:]" to change for normal EDI)
    i = 0
    for line in listy:
        listy[i] = line.split(delim)
        listy[i] = listy[i][1:]
        i += 1
    listy.remove([])
    return listy
Beispiel #2
0
    'CTT' : {'*':['PO_span',1],
},
    'REF' : {'RE':['unknown',2], 'IB':['Inbound',2], 'BD':['Bid_No',2], 'IF':['Issue_No',2], 'H6':['unknown', 2], 'ZZ':['Mutually_defined',2], 'H5':['Recall', 2], '99':['Rate Conf. ID', 2],'SV':['Service_Charge_No', 2]

},
    'ST' : {'846':['Header_Segment', 0],'843':['Award_Segment', 0], '864':['Sys_notice',0]
},
    'SE' : {'*':['Segment_Span',1]

},
    'GS' : {'IB':['Award_Header',1]

},
        }
        # 'BIA' : {''},}
listy = listy.splitlines()
i=0
for line in listy:
    listy[i]=line[6:]
    i+=1
delim='*'
for line in listy:
    element = line[:3]
    if delim in element:
        element = line[:2]
    line = line.split(delim)
    if element in specs:
        ind=line.index(element)
        code = line[ind+1]
        try:
            specs[element][code]