Example #1
0
        private static Dictionary <string, object> GetSchemaParameterValues(UserConnection userConnection,
                                                                            BaseProcessSchemaElement baseSchemaElement, IEnumerable <CompleteParameter> completeParameters)
        {
            var schemaParameterValues = new Dictionary <string, object>();
            var schemaElement         = (IProcessParametersMetaInfo)baseSchemaElement;
            ProcessSchemaParameterCollection schemaElementParameters = schemaElement.ForceGetParameters();

            foreach (CompleteParameter parameter in completeParameters)
            {
                ProcessSchemaParameter userTaskParameter = schemaElementParameters.FindByName(parameter.key);
                if (userTaskParameter == null)
                {
                    continue;
                }
                var dataParameter = new Parameter {
                    Value = parameter.value
                };
                Terrasoft.Core.DataValueType dataValueType = userTaskParameter.DataValueType;
                if (dataValueType is DateTimeDataValueType && dataParameter.Value == null)
                {
                    dataParameter.Value = "null";
                }
                object parameterValue = dataParameter.GetValue(userConnection, userTaskParameter.DataValueType);
                schemaParameterValues[userTaskParameter.Name] = parameterValue;
            }
            return(schemaParameterValues);
        }
Example #2
0
        private EntitySchema FindSourceEntitySchema()
        {
            EntitySchemaManager      entitySchemaManager = UserTask.UserConnection.EntitySchemaManager;
            BaseProcessSchemaElement userTaskSchema      = UserTask.GetSchemaElement();
            var          parametersMetaInfo = userTaskSchema as IProcessParametersMetaInfo;
            EntitySchema schema             = null;

            if (parametersMetaInfo != null)
            {
                ProcessSchemaParameterCollection parameters = parametersMetaInfo.ForceGetParameters();
                ProcessSchemaParameter           parameter  = parameters.GetByName("EmailTemplateEntityId");
                schema = entitySchemaManager.FindInstanceByUId(parameter.ReferenceSchemaUId);
            }
            return(schema);
        }