public static Boolean FillFormDataFromExtract(Int64 AEventPartnerKey, Int32 AExtractId, TFormLetterInfo AFormLetterInfo, out List <TFormData> AFormDataList) { Boolean ReturnValue = true; List <TFormData> dataList = new List <TFormData>(); MExtractTable ExtractTable; Int32 RowCounter = 0; TProgressTracker.InitProgressTracker(DomainManager.GClientID.ToString(), Catalog.GetString("Create Attendee Form Letter")); TDBTransaction ReadTransaction = null; DBAccess.GDBAccessObj.GetNewOrExistingAutoReadTransaction(IsolationLevel.ReadCommitted, TEnforceIsolationLevel.eilMinimum, ref ReadTransaction, delegate { ExtractTable = MExtractAccess.LoadViaMExtractMaster(AExtractId, ReadTransaction); RowCounter = 0; // query all rows of given extract foreach (MExtractRow ExtractRow in ExtractTable.Rows) { RowCounter++; TFormDataAttendee formDataAttendee = new TFormDataAttendee(); FillFormDataFromAttendee(AEventPartnerKey, ExtractRow.PartnerKey, formDataAttendee, AFormLetterInfo, ExtractRow.SiteKey, ExtractRow.LocationKey); dataList.Add(formDataAttendee); if (TProgressTracker.GetCurrentState(DomainManager.GClientID.ToString()).CancelJob) { dataList.Clear(); ReturnValue = false; TLogging.Log("Retrieve Conference Form Letter Data - Job cancelled"); break; } TProgressTracker.SetCurrentState(DomainManager.GClientID.ToString(), Catalog.GetString("Retrieving Attendee Data"), (RowCounter * 100) / ExtractTable.Rows.Count); } }); TProgressTracker.FinishJob(DomainManager.GClientID.ToString()); AFormDataList = new List <TFormData>(); AFormDataList = dataList; return(ReturnValue); }
public static Boolean FillFormDataForAllAttendees(Int64 AEventPartnerKey, TFormLetterInfo AFormLetterInfo, out List <TFormData> AFormDataList) { Boolean ReturnValue = true; List <TFormData> dataList = new List <TFormData>(); PcAttendeeTable AttendeeTable; Int32 RowCounter = 0; TProgressTracker.InitProgressTracker(DomainManager.GClientID.ToString(), Catalog.GetString("Create Attendee Form Letter for All Attendee")); TDBTransaction ReadTransaction = new TDBTransaction(); DBAccess.ReadTransaction( ref ReadTransaction, delegate { AttendeeTable = PcAttendeeAccess.LoadViaPcConference(AEventPartnerKey, ReadTransaction); RowCounter = 0; // query all rows of given extract foreach (PcAttendeeRow AttendeeRow in AttendeeTable.Rows) { RowCounter++; TFormDataAttendee formDataAttendee = new TFormDataAttendee(); FillFormDataFromAttendee(AEventPartnerKey, AttendeeRow.PartnerKey, formDataAttendee, AFormLetterInfo); dataList.Add(formDataAttendee); if (TProgressTracker.GetCurrentState(DomainManager.GClientID.ToString()).CancelJob) { dataList.Clear(); ReturnValue = false; TLogging.Log("Retrieve Conference Form Letter Data for All Attendees - Job cancelled"); break; } TProgressTracker.SetCurrentState(DomainManager.GClientID.ToString(), Catalog.GetString("Retrieving Attendee Data"), (RowCounter * 100) / AttendeeTable.Rows.Count); } }); TProgressTracker.FinishJob(DomainManager.GClientID.ToString()); AFormDataList = new List <TFormData>(); AFormDataList = dataList; return(ReturnValue); }
public static void FillFormDataFromAttendee(Int64 AEventPartnerKey, Int64 APartnerKey, TFormDataAttendee AFormDataAttendee, TFormLetterInfo AFormLetterInfo, TDBTransaction AReadTransaction, Int64 ASiteKey = 0, Int32 ALocationKey = 0) { TPartnerClass PartnerClass; String ShortName; TStdPartnerStatusCode PartnerStatusCode; if (MCommonMain.RetrievePartnerShortName(APartnerKey, out ShortName, out PartnerClass, out PartnerStatusCode, AReadTransaction)) { // first retrieve all applicant information TFormLettersPersonnelWebConnector.FillFormDataFromApplicant(AEventPartnerKey, APartnerKey, AFormDataAttendee, AFormLetterInfo, AReadTransaction, ASiteKey, ALocationKey); PcAttendeeTable AttTable; PcAttendeeRow AttRow; AttTable = PcAttendeeAccess.LoadByPrimaryKey(AEventPartnerKey, APartnerKey, AReadTransaction); if (AttTable.Count > 0) { AttRow = (PcAttendeeRow)AttTable.Rows[0]; AFormDataAttendee.DiscoveryGroup = AttRow.DiscoveryGroup; AFormDataAttendee.WorkGroup = AttRow.WorkGroup; PcConferenceVenueTable VenueTable; PcConferenceVenueRow VenueRow; VenueTable = PcConferenceVenueAccess.LoadViaPcConference(AEventPartnerKey, AReadTransaction); if (VenueTable.Count > 0) { VenueRow = (PcConferenceVenueRow)VenueTable.Rows[0]; AFormDataAttendee.Venue = VenueRow.VenueKey.ToString("0000000000"); //TODO Buidling, Room, RoomIn, RoomOut, RoomDatesMatchTravelDates, VenueName instead of VenueKey } } } }
public static TFormDataAttendee FillFormDataFromAttendee(Int64 AEventPartnerKey, Int64 APartnerKey, TFormDataAttendee AFormDataAttendee, TFormLetterInfo AFormLetterInfo, Int64 ASiteKey = 0, Int32 ALocationKey = 0) { TDBTransaction ReadTransaction = null; DBAccess.GDBAccessObj.GetNewOrExistingAutoReadTransaction(IsolationLevel.ReadCommitted, TEnforceIsolationLevel.eilMinimum, ref ReadTransaction, delegate { FillFormDataFromAttendee(AEventPartnerKey, APartnerKey, AFormDataAttendee, AFormLetterInfo, ReadTransaction, ASiteKey, ALocationKey); }); return(AFormDataAttendee); }
public static TFormDataAttendee FillFormDataFromAttendee(Int64 AEventPartnerKey, Int64 APartnerKey, TFormDataAttendee AFormDataAttendee, TFormLetterInfo AFormLetterInfo, Int64 ASiteKey = 0, Int32 ALocationKey = 0) { TDBTransaction ReadTransaction = new TDBTransaction(); DBAccess.ReadTransaction( ref ReadTransaction, delegate { FillFormDataFromAttendee(AEventPartnerKey, APartnerKey, AFormDataAttendee, AFormLetterInfo, ReadTransaction, ASiteKey, ALocationKey); }); return(AFormDataAttendee); }