private void CreateDatetimeControl(CSAttributeGroup attributeGroup, PXFieldSelectingEventArgs args) { var required = attributeGroup.Required == true ? 1 : -1; var attribute = GetAttribute(attributeGroup.AttributeID); args.ReturnState = PXDateState.CreateInstance(args.ReturnState, nameof(CSAnswers.value), false, required, attribute.EntryMask, attribute.EntryMask, null, null); }
/// <exclude/> public override void FieldSelecting(PXCache sender, PXFieldSelectingEventArgs e) { if (_AttributeLevel == PXAttributeLevel.Item || e.IsAltered) { e.ReturnState = PXDateState.CreateInstance(e.ReturnState, _FieldName, _IsKey, null, _InputMask, _DisplayMask, _MinValue, _MaxValue); } if (e.ReturnValue != null && (e.ReturnValue is int || e.ReturnValue is int?)) { TimeSpan span = new TimeSpan(0, 0, 0, (int)e.ReturnValue); e.ReturnValue = new DateTime(1900, 1, 1).Add(span); } }
public static PXFieldState CreateFieldState(string fieldName, string description, int ctype, string entryMask, string list) { uint msgnum; string msgprefix; string displayName = string.Format("${0}$-{1}", PXMessages.Localize(ActionsMessages.Attributes, out msgnum, out msgprefix), description); PXFieldState fs = null; switch (ctype) { case 1: { fs = PXStringState.CreateInstance(null, null, null, fieldName, null, null, entryMask, null, null, null, null); fs.Visibility = PXUIVisibility.Dynamic; fs.DisplayName = displayName; fs.Enabled = false; fs.Visible = false; break; } case 2: case 6: { List <string> vals = new List <string>(); List <string> lbls = new List <string>(); if (!String.IsNullOrEmpty(list)) { foreach (string elem in list.Split(new char[] { '\t' }, StringSplitOptions.RemoveEmptyEntries)) { string[] pair = elem.Split(new char[] { '\0' }, StringSplitOptions.RemoveEmptyEntries); if (pair.Length > 0) { vals.Add(pair[0]); if (pair.Length > 1) { lbls.Add(pair[1]); } else { lbls.Add(pair[0]); } } } } fs = PXStringState.CreateInstance(null, null, null, fieldName, null, null, null, vals.ToArray(), lbls.ToArray(), true, null); fs.Visibility = PXUIVisibility.Dynamic; fs.DisplayName = displayName; fs.Enabled = false; fs.Visible = false; if (ctype == 6) { ((PXStringState)fs).MultiSelect = true; } break; } case 4: { fs = PXFieldState.CreateInstance(null, typeof(Boolean), null, null, -1, null, null, null, fieldName, null, displayName, null, PXErrorLevel.Undefined, false, false, null, PXUIVisibility.Dynamic, null, null, null); break; } case 5: { fs = PXDateState.CreateInstance(null, fieldName, null, null, "d", "d", null, null); fs.Visibility = PXUIVisibility.Dynamic; fs.DisplayName = displayName; fs.Enabled = false; fs.Visible = false; break; } } return(fs); }
protected virtual void CSAttributeGroup_DefaultValue_FieldSelecting(PXCache sender, PXFieldSelectingEventArgs e) { string AnswerValueField = "DefaultValue"; int AnswerValueLength = 60; CSAttributeGroup row = e.Row as CSAttributeGroup; if (row != null) { CSAttribute question = new PXSelect <CSAttribute>(this).Search <CSAttribute.attributeID>(row.AttributeID); PXResultset <CSAttributeDetail> options = PXSelect <CSAttributeDetail, Where <CSAttributeDetail.attributeID, Equal <Required <CSAttributeGroup.attributeID> > >, OrderBy <Asc <CSAttributeDetail.sortOrder> > > .Select(this, row.AttributeID); int required = -1; if ((bool)row.Required) { required = 1; } if (options.Count > 0) { //ComboBox: List <string> allowedValues = new List <string>(); List <string> allowedLabels = new List <string>(); foreach (CSAttributeDetail option in options) { allowedValues.Add(option.ValueID); allowedLabels.Add(option.Description); } string mask = question != null ? question.EntryMask : null; e.ReturnState = PXStringState.CreateInstance(e.ReturnState, CSAttributeDetail.ParameterIdLength, true, AnswerValueField, false, required, mask, allowedValues.ToArray(), allowedLabels.ToArray(), true, null); if (question.ControlType == CSAttribute.MultiSelectCombo) { ((PXStringState)e.ReturnState).MultiSelect = true; } } else if (question != null) { if (question.ControlType.Value == CSAttribute.CheckBox) { e.ReturnState = PXFieldState.CreateInstance(e.ReturnState, typeof(bool), false, false, required, null, null, false, AnswerValueField, null, null, null, PXErrorLevel.Undefined, true, true, null, PXUIVisibility.Visible, null, null, null); } else if (question.ControlType.Value == CSAttribute.Datetime) { string mask = question != null ? question.EntryMask : null; e.ReturnState = PXDateState.CreateInstance(e.ReturnState, AnswerValueField, false, required, mask, mask, null, null); } else { //TextBox: string mask = question != null ? question.EntryMask : null; e.ReturnState = PXStringState.CreateInstance(e.ReturnState, AnswerValueLength, null, AnswerValueField, false, required, mask, null, null, true, null); } } } }
private PXFieldState GetDateState(object returnState, int requiredFieldState) { return(PXDateState.CreateInstance(returnState, CommonMessages.DefaultValue, false, requiredFieldState, attribute.EntryMask, attribute.EntryMask, null, null)); }
protected override void FieldSelectingHandler(PXCache sender, PXFieldSelectingEventArgs e) { if (!(e.Row is CSAnswers row)) { return; } CRAttribute.Attribute attribute = CRAttribute.Attributes[row.AttributeID]; System.Collections.Generic.List <CRAttribute.AttributeValue> values = attribute?.Values; bool?nullable1 = row.IsRequired; bool flag = true; int num1 = nullable1.GetValueOrDefault() == flag & nullable1.HasValue ? 1 : -1; if (values != null && values.Count > 0) { System.Collections.Generic.List <string> stringList1 = new System.Collections.Generic.List <string>(); System.Collections.Generic.List <string> stringList2 = new System.Collections.Generic.List <string>(); foreach (CRAttribute.AttributeValue attributeValue in values) { if (!attributeValue.Disabled || !(row.Value != attributeValue.ValueID)) { stringList1.Add(attributeValue.ValueID); stringList2.Add(attributeValue.Description); } } e.ReturnState = (object)PXStringState.CreateInstance(e.ReturnState, new int?(10), new bool?(true), typeof(CSAnswers.value).Name, new bool?(false), new int?(num1), attribute.EntryMask, stringList1.ToArray(), stringList2.ToArray(), new bool?(true), (string)null); int?controlType = attribute.ControlType; int num2 = 6; if (controlType.GetValueOrDefault() == num2 & controlType.HasValue) { ((PXStringState)e.ReturnState).MultiSelect = true; } } else if (attribute != null) { int?nullable2 = attribute.ControlType; int num2 = 4; if (nullable2.GetValueOrDefault() == num2 & nullable2.HasValue) { PXFieldSelectingEventArgs selectingEventArgs = e; object returnState = e.ReturnState; System.Type dataType = typeof(bool); bool? isKey = new bool?(false); bool? nullable3 = new bool?(false); int? required = new int?(num1); nullable2 = new int?(); int?precision = nullable2; nullable2 = new int?(); int?length = nullable2; // ISSUE: variable of a boxed type bool local = false; string name = typeof(CSAnswers.value).Name; bool? enabled = new bool?(true); bool? visible = new bool?(true); nullable1 = new bool?(); bool? readOnly = nullable1; PXFieldState instance = PXFieldState.CreateInstance(returnState, dataType, isKey, nullable3, required, precision, length, (object)local, name, enabled: enabled, visible: visible, readOnly: readOnly, visibility: PXUIVisibility.Visible); selectingEventArgs.ReturnState = (object)instance; int result; if (e.ReturnValue is string && int.TryParse((string)e.ReturnValue, NumberStyles.Integer, (IFormatProvider)CultureInfo.InvariantCulture, out result)) { e.ReturnValue = (object)Convert.ToBoolean(result); } } else { nullable2 = attribute.ControlType; int num3 = 5; if (nullable2.GetValueOrDefault() == num3 & nullable2.HasValue) { e.ReturnState = (object)PXDateState.CreateInstance(e.ReturnState, typeof(CSAnswers.value).Name, new bool?(false), new int?(num1), attribute.EntryMask, attribute.EntryMask, new DateTime?(), new DateTime?()); } else { PXStringState stateExt = sender.GetStateExt <CSAnswers.value>((object)null) as PXStringState; PXFieldSelectingEventArgs selectingEventArgs = e; object returnState = e.ReturnState; int? length = new int?(stateExt.With <PXStringState, int>((Func <PXStringState, int>)(_ => _.Length))); nullable1 = new bool?(); bool? isUnicode = nullable1; string name = typeof(CSAnswers.value).Name; bool? isKey = new bool?(false); int? required = new int?(num1); string entryMask = attribute.EntryMask; bool? exclusiveValues = new bool?(true); PXFieldState instance = PXStringState.CreateInstance(returnState, length, isUnicode, name, isKey, required, entryMask, (string[])null, (string[])null, exclusiveValues, (string)null); selectingEventArgs.ReturnState = (object)instance; } } } if (!(e.ReturnState is PXFieldState)) { return; } PXFieldState returnState1 = (PXFieldState)e.ReturnState; IPXInterfaceField pxInterfaceField = sender.GetAttributes((object)row, typeof(CSAnswers.value).Name).OfType <IPXInterfaceField>().FirstOrDefault <IPXInterfaceField>(); if (pxInterfaceField != null && pxInterfaceField.ErrorLevel != PXErrorLevel.Undefined && !string.IsNullOrEmpty(pxInterfaceField.ErrorText)) { returnState1.Error = pxInterfaceField.ErrorText; returnState1.ErrorLevel = pxInterfaceField.ErrorLevel; } returnState1.Enabled = true; }