When doing a setEntry you do not have to put every field in there. I have seen where programmers will do a "genEntry" and use the results to do a "setEntry". Unfortunately the "getEntry" sometimes includes fields like "Submitter" and "Create Date" that do not need to be updated. In addition doing "Put" statements only add two status fields in the list instead of 1. Here is what I would suggest:
public static String createRecordReplace(String Folio, String submitter, StringACTIVIDADES_1, String STATUS_1, String FOLIO_P_1, String FECHA_AT_1) { String entryIdOut= ""; int campos[]; campos = new int[4]; campos[0]=536870934; campos[1]=7; campos[2]=536870954; campos[3]=536871019; try { entry = userInfo.getEntry("FORM",Folio,campos); formaentry = new Entry(); if(ACTIVIDADES_1 != null) { formaentry.put(536870934,new Value(ACTIVIDADES_1)); } if(STATUS_1 != null) { formaentry.put(7,new Value(STATUS_1)); } if(FOLIO_P_1 != null) { formaentry.put(536870954,new Value(FOLIO_P_1)); } if(FECHA_AT_1 != null) { formaentry.put(536871019,new Value(FECHA_AT_1)); } userInfo.setEntry("FORMA", Folio, formaentry, null, 0); System.out.println("Success."); } catch (ARException e) { ARExceptionHandler(e," Problem"); } } -----Original Message----- From: Action Request System discussion list(ARSList) [mailto:arslist@ARSLIST.ORG] On Behalf Of Guillermo Alfredo Torres Barron Sent: Thursday, June 16, 2011 5:40 PM To: arslist@ARSLIST.ORG Subject: Problem with JAVA API Hi dear listers I try to modify a ticket from java api program, the program will modify some fields in determinate registry with a entry-id proportionate for the user, and not all fields will be modified at the same time, but I run my class appear the next error # ./ejecutar APImod "00000000002" "documentation in this moment " "" "" "" Problem. Message type: Error Status List: Required field cannot be reset to a NULL value 7 The field is a core system field and cannot be changed 1 Stack Trace:ERROR (326): Required field cannot be reset to a NULL value; 7 WARNING (52): The field is a core system field and cannot be changed; 1 at com.bmc.arsys.apitransport.ApiProxyJRpcBase.verifyStatus(Unknown Source) at com.bmc.arsys.apitransport.ApiProxyJRpcBase.a(Unknown Source) at com.bmc.arsys.apitransport.ApiProxyJRpcBase.arCall(Unknown Source) at com.bmc.arsys.api.ProxyJRpc.ARSetEntry(Unknown Source) at com.bmc.arsys.api.ARServerUser.setEntry(Unknown Source) at APImod_CASSCA.createRecordReplace(APImod But I don't want to change field 7 and 1 My source code is public static String createRecordReplace(String Folio, String submitter, StringACTIVIDADES_1, String STATUS_1, String FOLIO_P_1, String FECHA_AT_1) { String entryIdOut= ""; int campos[]; campos = new int[4]; campos[0]=536870934; campos[1]=7; campos[2]=536870954; campos[3]=536871019; try { entry = userInfo.getEntry("FORM",Folio,campos); if(ACTIVIDADES_1 != null) { entry.put(536870934,new Value(ACTIVIDADES_1)); } if(STATUS_1 != null) { entry.put(7,new Value(STATUS_1)); } if(FOLIO_P_1 != null) { entry.put(536870954,new Value(FOLIO_P_1)); } if(FECHA_AT_1 != null) { entry.put(536871019,new Value(FECHA_AT_1)); } userInfo.setEntry("FORMA", Folio, entry, null, 0); System.out.println("Success."); } catch (ARException e) { ARExceptionHandler(e," Problem"); } } How can I modify a field only the user sends the corresponding value for the field??? We have AR Server 7.6.03, O.S. Solaris 10, Oracle 11g. Thanks in advanced Greetings from Mexico City Este correo electronico es confidencial y/o puede contener informacion privilegiada. Si usted no es su destinatario o no es alguna persona autorizada por este para recibir sus correos electronicos, NO debera usted utilizar, copiar, revelar, o tomar ninguna accion basada en este correo electronico o cualquier otra informacion incluida en el, favor de notificar al remitente de inmediato mediante el reenvio de este correo electronico y borrar a continuacion totalmente este correo electronico y sus anexos. Nota: Los acentos y caracteres especiales fueron omitidos para su correcta lectura en cualquier medio electronico. This e-mail is confidential and/or may contain privileged information. If you are not the addressee or authorized to receive this for the addressee, you must not use, copy, disclose, or take any action based on this message or any other information herein, please advise the sender immediately by reply this e-mail and delete this e-mail and its attachments. _______________________________________________________________________________ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org attend wwrug11 www.wwrug.com ARSList: "Where the Answers Are" _______________________________________________________________________________ UNSUBSCRIBE or access ARSlist Archives at www.arslist.org attend wwrug11 www.wwrug.com ARSList: "Where the Answers Are"