# Enterprise Communication Interface (ECI)

## eci_upd_ent

### Description
Update record in an entity list. Opens list to entity. Check if record exists (sel_fld_nam/sel_fld_val): Record does not exist: Return error code. Record exists: Check if you have access to record and check if record is reserved by current user, if flag res_check is "on" or "reset": yes: Update fields 'upd_fld_nam'. Modification of values by user in interactive mode. Call of all field- and list triggers. Store record Store record If res_check="reset", dereserve record. In interactive mode and Agile e6 default "ECI-UPD-HISTORY="1" : Open assigned history widget and allow interactive input by user. Return values of return fields Close list.
### Input parameter
ent_nam
string | name of entity
wdg_nam
string | name of mask
wdg_ext
string | activate system fields on list {"on", "off"}
wdg_mod
string | mode of widget {"list","form","bvb"}
act_mod
string | mode of interaction {"int","bat"}
res_flag
string | update record only if reserved {"on","off","reset"}
sel_fld_nam
stringlist | names of fields for selection
sel_fld_val
stringlist | values of fields for selection
upd_fld_nam
stringlist | names of fields to write
upd_fld_val
stringlist | values of fields to write
ret_fld_nam
stringlist | names of fields to return
optimize
string | Optimization flag. This parameter defines that a database update is only done if the old and new values differ (and therefore, the modification date is not changed if the values are the same). on = before writing the values of input parameter upd_fld_val it is checked whether the old value differs from new value. Only in this case the "new" value is written in field. off = Value of upd_fld_val is written to field.
### Output parameter
ret_fld_val
char | values of fields to return
### Example
Update item record Input parameter:
ent_nam | "EDB-ARTICLE"
wdg_nam | "/EDB-L=EDB-ART-SLI /EDB-F=EDB-ART-SFR"
wdg_ext | "off"
wdg_mod | "bvb"
act_mod | "int"
res_flag | "off"
sel_fld_nam | "T_MASTER_DAT.PART_ID"
| "T_MASTER_DAT.PART_VERSION"
| "T_MASTER_DAT.PART_REVISION"
sel_fld_val | "art001"
| "0"
| "0"
upd_fld_nam | "T_MASTER_DAT.PART_NAME"
upd_fld_val | "neuer Name art001"
ret_fld_nam | "T_MASTER_DAT.C_ID"
####