Exemple #1
0
def set_station(sid):
    records = get_station()
    model = 'cr.base.station'
    print model

    for rec in records:
        data = rpc.execute(sid, model,'search', [('cr_base_station_id','=', rec['code'])] )
        if data:
            print 'old:', data[0]
            continue
        
        parent_id = rpc.execute(sid, 'cr.base.part','search', 
            [('cr_base_part_id','=', rec['parent'])] )
        
        
        if not parent_id:
            continue
            
        parent_id = parent_id[0]
        
        vals = {
            'cr_base_station_name': rec['name'],
            'cr_base_station_id': rec['code'],
            'cr_base_part_id': parent_id,
        }
        
        rid = rpc.execute(sid, model,'create', vals )
        print 'new:', rid
Exemple #2
0
def find(model, domain, record=None):
    ids = execute(usid, model, 'search', domain, limit=1)
    print 'find', model, domain, record, ids

    if not ids:
        id = execute(usid, model, 'create', record)
        print 'create, id=', model, id
        return id

    id = ids[0]
    print 'write, id=', model, id
    execute(usid, model, 'write', id, record)
    return id
Exemple #3
0
def set_company(sid):
    comps = get_company()
    model = 'cr.base.company'
    print model
    
    for comp in comps:
        rec = rpc.execute(sid, model,'search', [('cr_base_company_id','=', comp['cr_base_company_id'])] )
        if rec:
            print 'old:', rec[0]
            continue
            
        rid = rpc.execute(sid, model,'create', comp )
        print 'new:', rid
Exemple #4
0
def set_location(sid):
    records = get_location()
    model = 'cr.base.position'
    print model

    station_ids = rpc.execute(sid, 'cr.base.station','search',  [] )
    
    def fn( station_id, rec ):
        data = rpc.execute(sid, model,'search', [
                ('cr_base_position_id','=', rec['code']),
                ('cr_base_station_id','=', station_id),
            ])
            
        if data:
            print 'old:', data[0]
            return
        
        vals = {
            'cr_base_position_name': rec['name'],
            'cr_base_position_id': rec['code'],
            'cr_base_station_id': station_id,
        }
        
        rid = rpc.execute(sid, model,'create', vals )
        print 'new:', rid
          
        
    
    for station_id in station_ids:
        for rec in records:
            fn(station_id, rec)
Exemple #5
0
 def fn( station_id, rec ):
     data = rpc.execute(sid, model,'search', [
             ('cr_base_position_id','=', rec['code']),
             ('cr_base_station_id','=', station_id),
         ])
         
     if data:
         print 'old:', data[0]
         return
     
     vals = {
         'cr_base_position_name': rec['name'],
         'cr_base_position_id': rec['code'],
         'cr_base_station_id': station_id,
     }
     
     rid = rpc.execute(sid, model,'create', vals )
     print 'new:', rid
Exemple #6
0
def search_one(model, domain):
    ids = execute(usid, model, 'search', domain, limit=1)
    return ids and ids[0] or None