Toggle menu
876
3.8K
30.2K
279.1K
Catglobe Wiki
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

GroupBuilderRule class: Difference between revisions

From Catglobe Wiki
Nguyenduyan (talk | contribs)
No edit summary
Nguyenduyan (talk | contribs)
No edit summary
Line 33: Line 33:
{{CGscriptProperties_Template|ReturnType=TypeInformation|Name=TypeInformation|HasGetter=1|Description=Get information about this class.}}
{{CGscriptProperties_Template|ReturnType=TypeInformation|Name=TypeInformation|HasGetter=1|Description=Get information about this class.}}
}}
}}
Bug 1. Create variable type below -> get error (. root (( Save)) @
GroupBuilderCatiOutcomeVariable
GroupBuilderParticipationPeriodVariable
GroupBuilderProtectedUntilVariable
GroupBuilderSampleRuleVariable
GroupBuilderTemplateVariable


cgscript:
=== <span style="color:#DF8621">'''Examples'''</span> ===
GroupBuilderRoot root = new GroupBuilderRoot (15560405);
GroupBuilderCatiOutcomeVariable variable = new GroupBuilderCatiOutcomeVariable ();
//GroupBuilderParticipationPeriodVariable variable = new GroupBuilderParticipationPeriodVariable();
//GroupBuilderProtectedUntilVariable variable = new GroupBuilderProtectedUntilVariable();
//GroupBuilderSampleRuleVariable variable = new GroupBuilderSampleRuleVariable();
//GroupBuilderTemplateVariable variable = new GroupBuilderTemplateVariable(true);
GroupBuilderRule rule = new GroupBuilderRule (root);
rule.Add(variable);
GroupBuilderRuleCollection ruleColection = root.RootRules;
ruleColection.Add(rule);
root.Save();
Β 
=> Error when run the script: An exception 'Object reference not set to an instance of an object.' occured while calling (. root (( Save)) @
see image http://cghead.catglobe.com/Images/GetImage.aspx?rid=1ce5b169-acde-4317-8676-9b5afa81dac9
Β 
Bug 2.Β  Problem with Range on GroupBuilderNumberOfCallsVariable
Β 
cgscript:
GroupBuilderRoot root = new GroupBuilderRoot (15560798);
GroupBuilderNumberOfCallsVariable variable = new GroupBuilderNumberOfCallsVariable ();
variable.QuestionnaireResourceId = 15546533;
Range a = new Range ("[1-4,9,12]");
variable.Range = a;
GroupBuilderRule rule = new GroupBuilderRule (root);
rule.Add(variable);
GroupBuilderRuleCollection ruleColection = root.RootRules;
ruleColection.Add(rule);
root.Save();
Β 
==> cript run completed but can't save the variable on GUID because of wrong range format
see image http://cghead.catglobe.com/Images/GetImage.aspx?rid=b0d458b0-ac49-4e6e-a725-3d25f6217b5d
Β 
Bug 3. Error when Add qnaire on GroupBuilderUsageVariable
Β 
cgscript:
GroupBuilderRoot root = new GroupBuilderRoot (15560798);
GroupBuilderUsageVariable variable = new GroupBuilderUsageVariable ();
number qnaireRIdΒ  = 15546533;
bool includeTestUsers =false;
bool includeCompleted = false;
bool includePartlyCompleted = false;
bool includeNotStarted = true;
bool includeNotParticipated = false;
variable.Add(qnaireRId, includeTestUsers, includeCompleted, includePartlyCompleted, includeNotStarted, includeNotParticipated);
//variable.Add(15546533, false, false, false, true, false);
rule.Add(variable);
GroupBuilderRuleCollection ruleColection = root.RootRules;
ruleColection.Add(rule);
root.Save();
==> Error when run the script: No conditionas @
see image http://cghead.catglobe.com/Images/GetImage.aspx?rid=3eadd94e-1ad6-4ae8-9ad5-1332b8b45ad6
Β 
Bug 4. GroupBuilderUserInfomationVariable not fix
Β 
cgscript:
GroupBuilderRoot root = new GroupBuilderRoot (15560790);
GroupBuilderUserInfomationVariableΒ  variable = new GroupBuilderUserInfomationVariableΒ  ();
variable.QuestionnaireResourceId = 15546533;
variable.CountryIsoCode="dk";
variable.CultureIsoCode = "da-DK";
variable.LanguageIsoCode ="da-DK";
GroupBuilderRule rule = new GroupBuilderRule (root);
rule.Add(variable);
GroupBuilderRuleCollection ruleColection = root.RootRules;
ruleColection.Add(rule);
root.Save();


==> the script run completed but show empty on GUID
'''Example: Add new rule''' <source lang="javascript">
see image http://cghead.catglobe.com/Images/GetImage.aspx?rid=68d70bea-b835-4f18-94af-b51490ce473a
Β 
Β 
-------------------
Β 
GroupBuilderBulkSMSVariable failed
Β 
GroupBuilderRoot root = new GroupBuilderRoot (15560405);
GroupBuilderBulkSMSVariable variable = new GroupBuilderBulkSMSVariable ();
variable.BulkSMSResourceId = 15560817 ;
GroupBuilderRule rule = new GroupBuilderRule (root);
rule.Add(variable);
GroupBuilderRuleCollection ruleColection = root.RootRules;
ruleColection.Add(rule);
root.Save();
Β 
------------------
Β 
GroupBuilderBulkSMSHistoryVariable check mistake doc
-------------
Β 
----
GroupBuilderNumberOfCallsVariable problem with get Range
Β 
GroupBuilderRoot root = new GroupBuilderRoot (15560798);
GroupBuilderRuleCollection ruleColection = root.RootRules;
GroupBuilderNumberOfCallsVariable variable = ruleColection[0][0];
print(variable.Range);
------
GroupBuilderUsageVariable error on Document
----
=== <span style="color:#DF8621">'''Examples'''</span> ===
'''Example: Add new rule'''
<source lang="javascript">
//Create a new group
//Create a new group
string groupName = "Test Group Builder: GroupBuilderRule";
string groupName = "Test Group Builder: GroupBuilderRule";
Line 166: Line 60:
</source>
</source>
<br/>
<br/>
'''Example: Add variable for rule'''
'''Example: Add variable for rule''' Β 
<source lang="javascript">
<source lang="javascript">
GroupBuilderRoot root = new GroupBuilderRoot (15560828);
GroupBuilderRoot root = new GroupBuilderRoot (15560828);
Line 181: Line 75:
<br/>
<br/>
'''Example: remove variable'''
'''Example: remove variable'''
<source lang="javascript">
<source lang="javascript"> Β 
GroupBuilderRoot root = new GroupBuilderRoot (15560828);
GroupBuilderRoot root = new GroupBuilderRoot (15560828);
GroupBuilderRuleCollection ruleColection = root.RootRules;
GroupBuilderRuleCollection ruleColection = root.RootRules;
Line 190: Line 84:
</source>
</source>
<br/>
<br/>
'''Example: Add children rule'''
'''Example: Add children rule''' Β 
<source lang="javascript">
<source lang="javascript"> Β 
GroupBuilderRoot root = new GroupBuilderRoot (15560828);
GroupBuilderRoot root = new GroupBuilderRoot (15560828);
GroupBuilderRuleCollection rootRules = root.RootRules;
GroupBuilderRuleCollection rootRules = root.RootRules;
Line 203: Line 97:
for (number i=0;i<supRules.Count;i++)
for (number i=0;i<supRules.Count;i++)
{
{
supRules[i].IncludeDeleted=true;
supRules[i].IncludeDeleted=true;
supRules[i].IncludeDisabled = true;
supRules[i].IncludeDisabled = true;
supRules[i].TargetPct=20;
supRules[i].TargetPct=20;
supRules[i].Name="subRule "+i;
supRules[i].Name="subRule "+i;
supRules[i].Add(variable);
supRules[i].Add(variable);


}
}
root.Save();
root.Save();
</source>
</source>

Revision as of 07:09, 19 April 2017

GroupBuilderRule



Represents a group builder rule.

Constructors

  • (GroupBuilderRoot root "Associate with this root collections group") - Create a new rule

Methods

Properties

  • int Actual { get; } - How many of the final group amount was generated from this rule
  • GroupBuilderRuleCollection Children { get; } - Child rules for this rule
  • int Count { get; } - Number of variables at this level
  • bool IncludeDeleted { get; set; } - Include deleted users or not
  • bool IncludeDisabled { get; set; } - Include disabled users or not
  • bool IsLeaf { get; } - True if this rule as no children
  • string Name { get; set; } - Name of rule
  • string ObjectTypeName { get; } - The name of the type of object.
  • int Target { get; set; } - Target amount to build for this group. -1 == all
  • number TargetPct { get; set; } - Target as pct of parent. -1 == use Target
  • TypeInformation TypeInformation { get; } - Get information about this class.


Examples

Example: Add new rule

//Create a new group
string groupName = "Test Group Builder: GroupBuilderRule";
number groupTemplateResourceId=2066;
number parentResourceId = 11088827;
array group = Group_new(groupName, groupTemplateResourceId, parentResourceId);
Group_save(group);
number groupRId = group[GROUP_RESOURCE_ID ]; 
//Create rule for the group
GroupBuilderRoot root = new GroupBuilderRoot (groupRId);
GroupBuilderRule rule = new GroupBuilderRule (root);
rule.Name = "Main rule";
print(rule.Actual);
print(rule.Count);
print(rule.IsLeaf);
print(rule.Name);
rule.IncludeDeleted = true;
rule.IncludeDisabled = true;
rule.Target=100;
GroupBuilderRuleCollection ruleColection = root.RootRules;
ruleColection.Add(rule);
root.Save();


Example: Add variable for rule

GroupBuilderRoot root = new GroupBuilderRoot (15560828);
GroupBuilderRuleCollection ruleColection = root.RootRules;
GroupBuilderRule rule = ruleColection[0];
GroupBuilderOptionDataVariable variable1 = new GroupBuilderOptionDataVariable();
GroupBuilderGroupVariable variable2 = new GroupBuilderGroupVariable (true);
GroupBuilderBulkmailVariable variable3 = new GroupBuilderBulkmailVariable ();
rule.Add(variable1);
rule.Add(variable2);
rule.Add(variable3);
root.Save();


Example: remove variable

 
GroupBuilderRoot root = new GroupBuilderRoot (15560828);
GroupBuilderRuleCollection ruleColection = root.RootRules;
GroupBuilderRule rule = ruleColection[0];
GroupBuilderOptionDataVariable variable1 = rule[0];
rule.Remove(variable1);
root.Save();


Example: Add children rule

 
GroupBuilderRoot root = new GroupBuilderRoot (15560828);
GroupBuilderRuleCollection rootRules = root.RootRules;
GroupBuilderRule rootRule = rootRules[0];
GroupBuilderRuleCollection supRules = rootRule.Children;
GroupBuilderRule supRule1 = new GroupBuilderRule (root);
supRules.Add(supRule1);
GroupBuilderRule supRule2 = new GroupBuilderRule (root);
supRules.Add(supRule2);
GroupBuilderGroupVariable variable = new GroupBuilderGroupVariable (true);
for (number i=0;i<supRules.Count;i++)
{
 supRules[i].IncludeDeleted=true;
 supRules[i].IncludeDisabled = true;
 supRules[i].TargetPct=20;
 supRules[i].Name="subRule "+i;
 supRules[i].Add(variable);
 

}
root.Save();