public string SetFieldValue(ref SVAOLLib.Fields oFields, long lIdField, string stValue) { //Controllo se non è stato aperto già un File di Log string SetFVal = ""; //valore di ritorno int iCount, imax; imax = oFields.Count; try { for (iCount = 1; iCount < imax + 1; iCount++) { //Campo protocollo interno if ((long)((SVAOLLib.Field)oFields.Item(iCount)).Id == lIdField) { long ss = (long)((SVAOLLib.Field)oFields.Item(iCount)).Id; ((SVAOLLib.Field)oFields.Item(iCount)).Value = stValue; SetFVal = stValue; break; } } } catch (Exception e) { throw new Exception(String.Format("{0}>>{1}>>{2}", "ERRORE : SetFieldValue", e.Source, e.Message), e); } return(SetFVal); }
public Boolean SetSingleFieldValue(string GuidConnect, string CardId, long FieldId, string FieldValue) { try { SVAOLLib.Card card = GetCardFromId(GuidConnect, CardId); SVAOLLib.Fields fields = (SVAOLLib.Fields)card.Fields; string result = SetFieldValue(ref fields, Convert.ToInt64(FieldId), FieldValue); card.Modify(0); return(true); } catch (Exception e) { throw new Exception(String.Format("{0}>>{1}>>{2}", "ERRORE : SetSingleFieldValue", e.Source, e.Message), e); } }
public object GetSingleFieldValue(string GuidConnect, string CardId, long FieldId, Boolean useInternalCard = false) { object result = null; SVAOLLib.Card card; try { card = GetCardFromId(GuidConnect, CardId); SVAOLLib.Fields fields = (SVAOLLib.Fields)card.Fields; foreach (SVAOLLib.Field f in fields) { if ((long)f.Id == FieldId) { result = f.Value; break; } } } catch (Exception ex) { throw new Exception(String.Format("{0} >> {1}: {2}", "ERRORE: FormatID", ex.Source, ex.Message), ex); } finally { } if (string.IsNullOrEmpty((string)result) == false) { return(result); } else { return(""); } }
public List <string> SearchCardsByField(string stGuidConnect, string stArchive, string stDocType, long lFieldID, string stFieldValueFrom, string stFieldValueTo, string userId) { //Controllo se non è stato aperto già un File di Log List <string> lResult = new List <string>(); //istanzio i Manager che mi servono //Inizializzo l'oggetto SvAol.Session SVAOLLib.Session oSession = new SVAOLLib.Session(); SVAOLLib.User oUser = new SVAOLLib.User(); try { if (stGuidConnect != null) { oUser.GUIDconnect = stGuidConnect; oUser.UserID = userId.ToUpper(); oUser.LoadFromUserID(userId.ToUpper()); //istanzio gli oggetti svaol SVAOLLib.Archive oArchive = new SVAOLLib.Archive(); SVAOLLib.DocumentType oDocType = new SVAOLLib.DocumentType(); SVAOLLib.SearchCriteria oSearchCriteria = new SVAOLLib.SearchCriteria(); SVAOLLib.Archives oArchives = new SVAOLLib.Archives(); SVAOLLib.Fields oFields = new SVAOLLib.Fields(); object[] aCardsAsArray; long lCardsCount, lSearchRes; //recupero l'archivioo e il tipo documento Int16 idTipoDocumento = 0; Int16 idTipoArchivio = 0; using (var oDocManager = new DocManager(_Logger, _sLogId)) { idTipoDocumento = oDocManager.GetIdDocTypeByName(stGuidConnect, stDocType); } oDocType.Id = idTipoDocumento; oDocType.GUIDconnect = stGuidConnect; oDocType.LoadDocumentTypeFromId(); using (var oDocManager = new DocManager(_Logger, _sLogId)) { idTipoArchivio = oDocManager.GetIdArchiveByName(stGuidConnect, stArchive); } oArchive.GUIDconnect = stGuidConnect; oArchive.Id = idTipoArchivio; oArchive.LoadFromId(); //Inizializzo l'oggetto Session oSession.GUIDconnect = stGuidConnect; //Aggiungo l'archivio all'oggetto relativo ai criteri di ricerca oArchives.Add(oArchive, null); oSearchCriteria.Archives = oArchives; //Aggiungo il tipo documento all'oggetto relativo ai criteri di ricerca oSearchCriteria.DocType = oDocType; //Inserisco l'ambito della ricerca oSearchCriteria.Context = SVAOLLib.svContextSearch.svCsBoth; //Inserisco il tipo di ricerca oSearchCriteria.SearchType = SVAOLLib.svSearchType.svStIndexes; //Inserisco l'informazione sull'utente collegato oSearchCriteria.CntUser = oUser.Code; //Chiave di ricerca foreach (SVAOLLib.Field oField in (SVAOLLib.Fields)oDocType.Fields) { if ((long)oField.Id == lFieldID) { oField.Value = stFieldValueFrom; oField.ValueTo = stFieldValueTo; oFields.Add(oField, null); break; } } //Eseguo la ricerca oSearchCriteria.Fields = oFields; aCardsAsArray = (object[])oSession.SearchAsArray(oSearchCriteria, 0); lSearchRes = (long)oSearchCriteria.SearchResult; lCardsCount = aCardsAsArray.GetUpperBound(0); // Controllo che mi sia tornata una Card valida if (lCardsCount > 0) { //assegno la GuidCard della scheda trovata for (int i = 1; i < lCardsCount + 1; i++) { lResult.Add(aCardsAsArray[i].ToString().Substring(24)); } } } } catch (Exception e) { throw new Exception(String.Format("{0} >> {1}: {2}", "ERRORE: SearchCardByField", e.Source, e.Message), e); } finally { } return(lResult); }