// Required: common.js

// RECORD_PSCHEDULE GET
JSCUS_SQL._RECORD._PSCHEDULE = function(){};

	/** 
	 * SP_GET Cache of ParameterSet (Array) 
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY = null;
	JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_MODULE_ID = 40190;
	JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_MODULE_CODE = 'record_pschedule';
	
	
	/** 
	 * =======================================================================================================
	 * Perform SQL GET request to the table RECORD_PSCHEDULE. Returns DataSet.
	 *
	 * @param VAR_PARAMETER_ARRAY String() Array with Request ParameterSet.
	 * @param CALLBACK_ADDRESS(bool, String) A callback method when the server response is received.
	 *
	 * @param SQL_KEEP_PARAMETER_TO_CACHE bool (Optional) If TRUE save to cache, for easier paging request.
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_LITE = function
	(
		VAR_PARAMETER_ARRAY,
		CALLBACK_ADDRESS,
		
		SQL_KEEP_PARAMETER_TO_CACHE
	)
	{
		// Parameter Validation
		// _______________________________________________________________________
		JSVC_AV.VAR_VALIDATE_ARGUMENT_TYPE(VAR_PARAMETER_ARRAY, 'VAR_PARAMETER_ARRAY', 'ARRAY');
		
		// Handle Optionals
		// _______________________________________________________________________		
		SQL_KEEP_PARAMETER_TO_CACHE = JSVC_VAR.VAR_OPTIONAL(SQL_KEEP_PARAMETER_TO_CACHE, false);
		
		// Process SQL Request
		// _______________________________________________________________________
		var PARAM_SET = "";			
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_ID', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_ID"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_ACC_GROUP_ID', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_ACC_GROUP_ID"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_CAT_PRODUCT_ID', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_CAT_PRODUCT_ID"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_PRICE_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_PRICE_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_PRICE_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_PRICE_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_COST_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_COST_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_COST_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_COST_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D01_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D01_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D01_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D01_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D02_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D02_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D02_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D02_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D03_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D03_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D03_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D03_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D04_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D04_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D04_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D04_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D05_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D05_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D05_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D05_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D06_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D06_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D06_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D06_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D07_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D07_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D07_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D07_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D08_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D08_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D08_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D08_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D09_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D09_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D09_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D09_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D10_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D10_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D10_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D10_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D11_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D11_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D11_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D11_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D12_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D12_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D12_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D12_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D13_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D13_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D13_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D13_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D14_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D14_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D14_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D14_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D15_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D15_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D15_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D15_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D16_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D16_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D16_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D16_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D17_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D17_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D17_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D17_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D18_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D18_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D18_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D18_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D19_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D19_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D19_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D19_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D20_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D20_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D20_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D20_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D21_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D21_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D21_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D21_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D22_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D22_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D22_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D22_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D23_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D23_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D23_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D23_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D24_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D24_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D24_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D24_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D25_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D25_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D25_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D25_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D26_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D26_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D26_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D26_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D27_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D27_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D27_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D27_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D28_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D28_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D28_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D28_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D29_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D29_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D29_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D29_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D30_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D30_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D30_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D30_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D31_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D31_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D31_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D31_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_TOTAL_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_TOTAL_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_TOTAL_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_TOTAL_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_DATE_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_DATE_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_DATE_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_DATE_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_REMARKS', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_REMARKS"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_STATUS', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_STATUS"]);
				
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_ORDER_FIELD', VAR_PARAMETER_ARRAY["PARAM_ORDER_FIELD"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_ORDER_TYPE', VAR_PARAMETER_ARRAY["PARAM_ORDER_TYPE"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_SKIP', VAR_PARAMETER_ARRAY["PARAM_SKIP"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_LIMIT', VAR_PARAMETER_ARRAY["PARAM_LIMIT"]);
		
		// Copy Parameter To Cache
		// _______________________________________________________________________
		if(SQL_KEEP_PARAMETER_TO_CACHE == true)
		{
			JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY = VAR_PARAMETER_ARRAY;
		}
							
		// Send SQL Request
		// _______________________________________________________________________					
		CUS_SEND_REQUEST
		(
			CALLBACK_ADDRESS,
			JSCUS_CACHE.SERVER_URL + '/Record/pschedule/get_lite',
			'',
			PARAM_SET
		);	
	};


	/** 
	 * =======================================================================================================
	 * Perform SQL GET request to the table RECORD_PSCHEDULE. Returns DataSet.
	 *
	 * @param VAR_PARAMETER_ARRAY String() Array with Request ParameterSet.
	 * @param CALLBACK_ADDRESS(bool, String) A callback method when the server response is received.
	 *
	 * @param SQL_KEEP_PARAMETER_TO_CACHE bool (Optional) If TRUE save to cache, for easier paging request.
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET = function
	(
		VAR_PARAMETER_ARRAY,
		CALLBACK_ADDRESS,
		
		SQL_KEEP_PARAMETER_TO_CACHE
	)
	{
		// Parameter Validation
		// _______________________________________________________________________
		JSVC_AV.VAR_VALIDATE_ARGUMENT_TYPE(VAR_PARAMETER_ARRAY, 'VAR_PARAMETER_ARRAY', 'ARRAY');
		
		// Handle Optionals
		// _______________________________________________________________________		
		SQL_KEEP_PARAMETER_TO_CACHE = JSVC_VAR.VAR_OPTIONAL(SQL_KEEP_PARAMETER_TO_CACHE, false);
		
		// Process SQL Request
		// _______________________________________________________________________
		var PARAM_SET = "";			
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_ID', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_ID"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_ACC_GROUP_ID', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_ACC_GROUP_ID"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_CAT_PRODUCT_ID', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_CAT_PRODUCT_ID"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_PRICE_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_PRICE_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_PRICE_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_PRICE_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_COST_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_COST_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_COST_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_COST_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D01_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D01_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D01_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D01_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D02_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D02_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D02_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D02_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D03_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D03_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D03_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D03_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D04_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D04_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D04_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D04_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D05_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D05_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D05_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D05_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D06_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D06_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D06_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D06_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D07_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D07_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D07_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D07_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D08_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D08_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D08_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D08_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D09_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D09_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D09_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D09_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D10_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D10_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D10_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D10_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D11_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D11_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D11_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D11_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D12_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D12_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D12_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D12_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D13_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D13_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D13_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D13_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D14_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D14_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D14_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D14_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D15_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D15_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D15_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D15_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D16_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D16_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D16_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D16_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D17_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D17_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D17_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D17_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D18_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D18_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D18_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D18_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D19_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D19_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D19_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D19_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D20_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D20_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D20_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D20_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D21_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D21_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D21_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D21_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D22_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D22_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D22_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D22_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D23_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D23_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D23_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D23_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D24_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D24_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D24_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D24_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D25_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D25_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D25_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D25_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D26_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D26_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D26_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D26_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D27_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D27_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D27_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D27_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D28_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D28_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D28_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D28_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D29_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D29_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D29_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D29_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D30_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D30_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D30_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D30_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D31_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D31_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D31_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D31_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_TOTAL_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_TOTAL_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_TOTAL_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_TOTAL_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_DATE_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_DATE_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_DATE_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_DATE_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_REMARKS', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_REMARKS"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_STATUS', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_STATUS"]);
				
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_ORDER_FIELD', VAR_PARAMETER_ARRAY["PARAM_ORDER_FIELD"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_ORDER_TYPE', VAR_PARAMETER_ARRAY["PARAM_ORDER_TYPE"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_SKIP', VAR_PARAMETER_ARRAY["PARAM_SKIP"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_LIMIT', VAR_PARAMETER_ARRAY["PARAM_LIMIT"]);
		
		// Copy Parameter To Cache
		// _______________________________________________________________________
		if(SQL_KEEP_PARAMETER_TO_CACHE == true)
		{
			JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY = VAR_PARAMETER_ARRAY;
		}
							
		// Send SQL Request
		// _______________________________________________________________________					
		CUS_SEND_REQUEST
		(
			CALLBACK_ADDRESS,
			JSCUS_CACHE.SERVER_URL + '/Record/pschedule/get',
			'',
			PARAM_SET
		);	
	};


	/** 
	 * =======================================================================================================
	 * Perform SQL GET request to the table RECORD_PSCHEDULE. Returns DataSet.
	 *
	 * @param VAR_PARAMETER_ARRAY String() Array with Request ParameterSet.
	 * @param CALLBACK_ADDRESS(bool, String) A callback method when the server response is received.
	 *
	 * @param SQL_KEEP_PARAMETER_TO_CACHE bool (Optional) If TRUE save to cache, for easier paging request.
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_ALL = function
	(
		VAR_PARAMETER_ARRAY,
		CALLBACK_ADDRESS,
		
		SQL_KEEP_PARAMETER_TO_CACHE
	)
	{
		// Parameter Validation
		// _______________________________________________________________________
		JSVC_AV.VAR_VALIDATE_ARGUMENT_TYPE(VAR_PARAMETER_ARRAY, 'VAR_PARAMETER_ARRAY', 'ARRAY');
		
		// Handle Optionals
		// _______________________________________________________________________		
		SQL_KEEP_PARAMETER_TO_CACHE = JSVC_VAR.VAR_OPTIONAL(SQL_KEEP_PARAMETER_TO_CACHE, false);
		
		// Process SQL Request
		// _______________________________________________________________________
		var PARAM_SET = "";			
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_ID', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_ID"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_ACC_GROUP_ID', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_ACC_GROUP_ID"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_CAT_PRODUCT_ID', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_CAT_PRODUCT_ID"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_PRICE_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_PRICE_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_PRICE_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_PRICE_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_COST_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_COST_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_COST_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_COST_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D01_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D01_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D01_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D01_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D02_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D02_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D02_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D02_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D03_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D03_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D03_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D03_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D04_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D04_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D04_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D04_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D05_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D05_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D05_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D05_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D06_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D06_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D06_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D06_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D07_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D07_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D07_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D07_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D08_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D08_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D08_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D08_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D09_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D09_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D09_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D09_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D10_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D10_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D10_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D10_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D11_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D11_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D11_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D11_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D12_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D12_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D12_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D12_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D13_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D13_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D13_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D13_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D14_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D14_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D14_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D14_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D15_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D15_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D15_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D15_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D16_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D16_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D16_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D16_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D17_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D17_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D17_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D17_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D18_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D18_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D18_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D18_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D19_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D19_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D19_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D19_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D20_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D20_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D20_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D20_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D21_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D21_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D21_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D21_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D22_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D22_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D22_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D22_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D23_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D23_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D23_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D23_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D24_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D24_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D24_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D24_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D25_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D25_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D25_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D25_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D26_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D26_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D26_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D26_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D27_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D27_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D27_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D27_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D28_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D28_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D28_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D28_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D29_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D29_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D29_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D29_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D30_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D30_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D30_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D30_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D31_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D31_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D31_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D31_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_TOTAL_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_TOTAL_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_TOTAL_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_TOTAL_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_DATE_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_DATE_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_DATE_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_DATE_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_REMARKS', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_REMARKS"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_STATUS', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_STATUS"]);
		
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_ACC_GROUP_ID', VAR_PARAMETER_ARRAY["PARAM_ACC_GROUP_ID"]);	
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_ACC_GROUP_DESCRIPTION', VAR_PARAMETER_ARRAY["PARAM_ACC_GROUP_DESCRIPTION"]);	
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_ACC_GROUP_STATUS', VAR_PARAMETER_ARRAY["PARAM_ACC_GROUP_STATUS"]);	
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_ACC_GROUP_SYSTEM_GENERATED', VAR_PARAMETER_ARRAY["PARAM_ACC_GROUP_SYSTEM_GENERATED"]);	
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_CAT_PRODUCT_ID', VAR_PARAMETER_ARRAY["PARAM_CAT_PRODUCT_ID"]);	
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_CAT_PRODUCT_CAT_UOM_ID', VAR_PARAMETER_ARRAY["PARAM_CAT_PRODUCT_CAT_UOM_ID"]);	
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_CAT_PRODUCT_BARCODE', VAR_PARAMETER_ARRAY["PARAM_CAT_PRODUCT_BARCODE"]);	
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_CAT_PRODUCT_ITEMCODE', VAR_PARAMETER_ARRAY["PARAM_CAT_PRODUCT_ITEMCODE"]);	
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_CAT_PRODUCT_DESCRIPTION', VAR_PARAMETER_ARRAY["PARAM_CAT_PRODUCT_DESCRIPTION"]);	
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_CAT_PRODUCT_HAS_RECIPE', VAR_PARAMETER_ARRAY["PARAM_CAT_PRODUCT_HAS_RECIPE"]);	
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_CAT_PRODUCT_ING_PRICE_FROM', VAR_PARAMETER_ARRAY["PARAM_CAT_PRODUCT_ING_PRICE_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_CAT_PRODUCT_ING_PRICE_TO', VAR_PARAMETER_ARRAY["PARAM_CAT_PRODUCT_ING_PRICE_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_CAT_PRODUCT_ING_NET_CONTENT_FROM', VAR_PARAMETER_ARRAY["PARAM_CAT_PRODUCT_ING_NET_CONTENT_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_CAT_PRODUCT_ING_NET_CONTENT_TO', VAR_PARAMETER_ARRAY["PARAM_CAT_PRODUCT_ING_NET_CONTENT_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_CAT_PRODUCT_MIXTURE_QTY_FROM', VAR_PARAMETER_ARRAY["PARAM_CAT_PRODUCT_MIXTURE_QTY_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_CAT_PRODUCT_MIXTURE_QTY_TO', VAR_PARAMETER_ARRAY["PARAM_CAT_PRODUCT_MIXTURE_QTY_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_CAT_PRODUCT_STATUS', VAR_PARAMETER_ARRAY["PARAM_CAT_PRODUCT_STATUS"]);	
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_CAT_PRODUCT_SYSTEM_GENERATED', VAR_PARAMETER_ARRAY["PARAM_CAT_PRODUCT_SYSTEM_GENERATED"]);	
				
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_ORDER_FIELD', VAR_PARAMETER_ARRAY["PARAM_ORDER_FIELD"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_ORDER_TYPE', VAR_PARAMETER_ARRAY["PARAM_ORDER_TYPE"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_SKIP', VAR_PARAMETER_ARRAY["PARAM_SKIP"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_LIMIT', VAR_PARAMETER_ARRAY["PARAM_LIMIT"]);
		
		// Copy Parameter To Cache
		// _______________________________________________________________________
		if(SQL_KEEP_PARAMETER_TO_CACHE == true)
		{
			JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY = VAR_PARAMETER_ARRAY;
		}
							
		// Send SQL Request
		// _______________________________________________________________________					
		CUS_SEND_REQUEST
		(
			CALLBACK_ADDRESS,
			JSCUS_CACHE.SERVER_URL + '/Record/pschedule/get_all',
			'',
			PARAM_SET
		);	
	};
	
	
		/** 
	 * =======================================================================================================
	 * Perform SQL GET request to the table RECORD_PSCHEDULE. Returns DataSet.
	 *
	 * @param VAR_PARAMETER_ARRAY String() Array with Request ParameterSet.
	 * @param CALLBACK_ADDRESS(bool, String) A callback method when the server response is received.
	 *
	 * @param SQL_KEEP_PARAMETER_TO_CACHE bool (Optional) If TRUE save to cache, for easier paging request.
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_SUM = function
	(
		VAR_PARAMETER_ARRAY,
		CALLBACK_ADDRESS,
		
		SQL_KEEP_PARAMETER_TO_CACHE
	)
	{
		// Parameter Validation
		// _______________________________________________________________________
		JSVC_AV.VAR_VALIDATE_ARGUMENT_TYPE(VAR_PARAMETER_ARRAY, 'VAR_PARAMETER_ARRAY', 'ARRAY');
		
		// Handle Optionals
		// _______________________________________________________________________		
		SQL_KEEP_PARAMETER_TO_CACHE = JSVC_VAR.VAR_OPTIONAL(SQL_KEEP_PARAMETER_TO_CACHE, false);
		
		// Process SQL Request
		// _______________________________________________________________________
		var PARAM_SET = "";			
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_ID', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_ID"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_ACC_GROUP_ID', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_ACC_GROUP_ID"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_CAT_PRODUCT_ID', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_CAT_PRODUCT_ID"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_PRICE_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_PRICE_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_PRICE_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_PRICE_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_COST_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_COST_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_COST_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_COST_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D01_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D01_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D01_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D01_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D02_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D02_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D02_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D02_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D03_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D03_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D03_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D03_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D04_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D04_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D04_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D04_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D05_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D05_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D05_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D05_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D06_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D06_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D06_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D06_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D07_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D07_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D07_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D07_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D08_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D08_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D08_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D08_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D09_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D09_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D09_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D09_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D10_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D10_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D10_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D10_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D11_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D11_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D11_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D11_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D12_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D12_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D12_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D12_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D13_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D13_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D13_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D13_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D14_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D14_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D14_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D14_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D15_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D15_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D15_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D15_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D16_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D16_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D16_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D16_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D17_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D17_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D17_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D17_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D18_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D18_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D18_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D18_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D19_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D19_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D19_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D19_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D20_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D20_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D20_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D20_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D21_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D21_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D21_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D21_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D22_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D22_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D22_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D22_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D23_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D23_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D23_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D23_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D24_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D24_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D24_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D24_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D25_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D25_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D25_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D25_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D26_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D26_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D26_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D26_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D27_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D27_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D27_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D27_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D28_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D28_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D28_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D28_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D29_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D29_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D29_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D29_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D30_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D30_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D30_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D30_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D31_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D31_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D31_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D31_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_TOTAL_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_TOTAL_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_TOTAL_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_TOTAL_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_DATE_FROM', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_DATE_FROM"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_DATE_TO', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_DATE_TO"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_REMARKS', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_REMARKS"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_STATUS', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_STATUS"]);
				
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_ORDER_FIELD', VAR_PARAMETER_ARRAY["PARAM_ORDER_FIELD"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_ORDER_TYPE', VAR_PARAMETER_ARRAY["PARAM_ORDER_TYPE"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_SKIP', VAR_PARAMETER_ARRAY["PARAM_SKIP"]);
		PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_LIMIT', VAR_PARAMETER_ARRAY["PARAM_LIMIT"]);
		
		// Copy Parameter To Cache
		// _______________________________________________________________________
		if(SQL_KEEP_PARAMETER_TO_CACHE == true)
		{
			JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY = VAR_PARAMETER_ARRAY;
		}
							
		// Send SQL Request
		// _______________________________________________________________________					
		CUS_SEND_REQUEST
		(
			CALLBACK_ADDRESS,
			JSCUS_CACHE.SERVER_URL + '/Record/pschedule/get_sum',
			'',
			PARAM_SET
		);	
	};
	
	
	/** 
	 * =======================================================================================================
	 * Populate SP-GET request request parameters with default value.
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_PREPARE_MAPPED_ARRAY_FOR_GET = function()
	{
		// Initialize
		var RESULT_MAPARRAY = [];

		// Populate default fields
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_ID"] = FLAG_BIGINT_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_ACC_GROUP_ID"] = FLAG_BIGINT_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_CAT_PRODUCT_ID"] = FLAG_BIGINT_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_AMOUNT_PRICE_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_AMOUNT_PRICE_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_AMOUNT_COST_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_AMOUNT_COST_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D01_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D01_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D02_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D02_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D03_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D03_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D04_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D04_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D05_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D05_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D06_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D06_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D07_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D07_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D08_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D08_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D09_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D09_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D10_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D10_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D11_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D11_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D12_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D12_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D13_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D13_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D14_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D14_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D15_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D15_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D16_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D16_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D17_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D17_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D18_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D18_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D19_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D19_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D20_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D20_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D21_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D21_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D22_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D22_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D23_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D23_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D24_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D24_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D25_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D25_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D26_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D26_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D27_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D27_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D28_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D28_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D29_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D29_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D30_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D30_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D31_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D31_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_TOTAL_FROM"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_TOTAL_TO"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_DATE_FROM"] = FLAG_DATETIME_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_DATE_TO"] = FLAG_DATETIME_NULL;					
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_REMARKS"] = FLAG_NVARCHAR_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_STATUS"] = FLAG_TINYINT_NULL;
		
		
		RESULT_MAPARRAY["PARAM_ACC_GROUP_ID"] = FLAG_BIGINT_NULL,	
		RESULT_MAPARRAY["PARAM_ACC_GROUP_DESCRIPTION"] = FLAG_NVARCHAR_NULL,	
		RESULT_MAPARRAY["PARAM_ACC_GROUP_STATUS"] = FLAG_TINYINT_NULL,	
		RESULT_MAPARRAY["PARAM_ACC_GROUP_SYSTEM_GENERATED"] = FLAG_TINYINT_NULL,	
		RESULT_MAPARRAY["PARAM_CAT_PRODUCT_ID"] = FLAG_BIGINT_NULL,	
		RESULT_MAPARRAY["PARAM_CAT_PRODUCT_CAT_UOM_ID"] = FLAG_BIGINT_NULL,	
		RESULT_MAPARRAY["PARAM_CAT_PRODUCT_BARCODE"] = FLAG_NVARCHAR_NULL,	
		RESULT_MAPARRAY["PARAM_CAT_PRODUCT_ITEMCODE"] = FLAG_NVARCHAR_NULL,	
		RESULT_MAPARRAY["PARAM_CAT_PRODUCT_DESCRIPTION"] = FLAG_NVARCHAR_NULL,	
		RESULT_MAPARRAY["PARAM_CAT_PRODUCT_HAS_RECIPE"] = FLAG_TINYINT_NULL,	
		RESULT_MAPARRAY["PARAM_CAT_PRODUCT_ING_PRICE_FROM"] = FLAG_DECIMAL_NULL,
		RESULT_MAPARRAY["PARAM_CAT_PRODUCT_ING_PRICE_TO"] = FLAG_DECIMAL_NULL,
		RESULT_MAPARRAY["PARAM_CAT_PRODUCT_ING_NET_CONTENT_FROM"] = FLAG_DECIMAL_NULL,
		RESULT_MAPARRAY["PARAM_CAT_PRODUCT_ING_NET_CONTENT_TO"] = FLAG_DECIMAL_NULL,
		RESULT_MAPARRAY["PARAM_CAT_PRODUCT_MIXTURE_QTY_FROM"] = FLAG_DECIMAL_NULL,
		RESULT_MAPARRAY["PARAM_CAT_PRODUCT_MIXTURE_QTY_TO"] = FLAG_DECIMAL_NULL,
		RESULT_MAPARRAY["PARAM_CAT_PRODUCT_STATUS"] = FLAG_TINYINT_NULL,	
		RESULT_MAPARRAY["PARAM_CAT_PRODUCT_SYSTEM_GENERATED"] = FLAG_TINYINT_NULL,	
		
		
		// Paging Parameters
		RESULT_MAPARRAY["PARAM_ORDER_FIELD"] = "REC_PSCHEDULE_DATE";
		RESULT_MAPARRAY["PARAM_ORDER_TYPE"] = "ASC";
		RESULT_MAPARRAY["PARAM_SKIP"] = 0;
		RESULT_MAPARRAY["PARAM_LIMIT"] = JSCUS_CACHE.SITE_SHOW_RESULT_PER_PAGE_PLAIN_TEXT;

		// Return prepared MapArray
		return RESULT_MAPARRAY;
	};
	
	
	/** 
	 * =======================================================================================================
	 * Reload current page in query, stored at SQL cache.
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_CACHE = function
	(
		CALLBACK_ADDRESS
	)
	{
		JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET
		(
			JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY,
			CALLBACK_ADDRESS
		);
	};
	
	/**
	 * =======================================================================================================
	 * Resets a value within the SQL cache to NULLs.
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_CACHE_CLEAR = function()
	{
		JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY = null;
	};
				
	/** 
	 * =======================================================================================================
	 * Load First page in query, stored at SQL cache.
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_CACHE_MOVE_FIRST = function
	(
		CALLBACK_ADDRESS
	)
	{
		// Adjust Paging
		// ...........................................
		JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY["PARAM_SKIP"] = 0;

		// Return ParameterSet
		// ...........................................
		JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_CACHE(CALLBACK_ADDRESS);
	};


	/**
     * =======================================================================================================
	 * <summary>Load Previous page in query, stored at SQL cache.</summary>
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_CACHE_MOVE_PREV = function
	(
		CALLBACK_ADDRESS
	)
	{
		// Initialize
		// ...........................................
		var PARAM_SKIP = JSVC_NUM.VAR_NVALL(JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY["PARAM_SKIP"]);
		var PARAM_LIMIT = JSVC_NUM.VAR_NVALL(JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY["PARAM_LIMIT"]);

		// Adjust Paging
		// ...........................................
		if(PARAM_SKIP > PARAM_LIMIT)
		{
			JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY["PARAM_SKIP"] = PARAM_SKIP - PARAM_LIMIT;
		}
		else
		{
			JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY["PARAM_SKIP"] = 0;
		}

		// Request Query
		// ...........................................
		if(JSVC_NUM.VAR_NVALL(JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY["PARAM_SKIP"]) != PARAM_SKIP)
		{
			JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_CACHE(CALLBACK_ADDRESS);
			return true;
		}
		else
		{
			return false;	
		}		
	};


	/**
	 * =======================================================================================================
	 * Load Next page in query, stored at SQL cache.
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_CACHE_MOVE_NEXT = function
	(
		CALLBACK_ADDRESS
	)
	{
		// Initialize
		// ...........................................
		var PARAM_SKIP = JSVC_NUM.VAR_NVALL(JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY["PARAM_SKIP"]);
		var PARAM_LIMIT = JSVC_NUM.VAR_NVALL(JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY["PARAM_LIMIT"]);

		// Adjust Paging
		// ...........................................
		JSCUS_SQL._RECORD._PSCHEDULE.PROPERTY_CACHED_QUERY["PARAM_SKIP"] = PARAM_SKIP + PARAM_LIMIT;

		// Request Query
		// ...........................................
		JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_CACHE(CALLBACK_ADDRESS);
	};
	
	// =======================================================================================================
	
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_CACHE_CALLBACK_ADDRESS = [];
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_CACHE_CONTROL_VAR = [];
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_CACHE_KEEP_RECORD = [];
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_CACHE_RECORD_STATUS = [];
	
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_CACHE_PARAM_REC_PSCHEDULE_ID = [];
	
	/**
	 * =======================================================================================================
	 * Perform SQL GET requests to the table RECORD_PSCHEDULE, and populate Form/ComboBox/DataGridViewComboBoxColumn with the request result.
	 * Form/ComboBox/DataGridViewComboBoxColumn to Populate.
	 *
	 * @param Method CALLBACK_ADDRESS A Method to be called on Completion.
	 * @param Control CONTROL_VAR A Control to Populate.
	 * @param Boolean KEEP_RECORD If TRUE keeps the current items when populating ComboBox/ListBox.
	 * @param Byte RECORD_STATUS For Filtering a status of retrieving query.
	 *
	 * @return JSON String used to populate the control. (At Callback Address)
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE = function
	(
		CALLBACK_ADDRESS,
		
		CONTROL_VAR, 
		KEEP_RECORD,
		RECORD_STATUS,
		PARAM_REC_PSCHEDULE_ID,
		MAPPED_ARRAY_PARAMS
	)
	{	
		// Parameter Validation
		// _______________________________________________________________________
		JSVC_AV.VAR_VALIDATE_NULL(CALLBACK_ADDRESS, "CALLBACK_ADDRESS")
		JSVC_AV.VAR_VALIDATE_NULL(CONTROL_VAR, "CONTROL_VAR")
		JSVC_AV.VAR_VALIDATE_ARGUMENT_TYPE(KEEP_RECORD, 'KEEP_RECORD', 'BOOLEAN');
		JSVC_AV.VAR_VALIDATE_ARGUMENT_TYPE(RECORD_STATUS, 'RECORD_STATUS', 'NUMERIC');
		JSVC_AV.VAR_VALIDATE_ARGUMENT_TYPE(PARAM_REC_PSCHEDULE_ID, 'PARAM_REC_PSCHEDULE_ID', 'NUMERIC');
		
		// Handle Optionals
		// _______________________________________________________________________
		PARAM_REC_PSCHEDULE_ID = JSVC_VAR.VAR_OPTIONAL(PARAM_REC_PSCHEDULE_ID, FLAG_BIGINT_NULL);		
		
		// Initialize
		// _______________________________________________________________________
		if(JSVC_VAR.VAR_ISSET(MAPPED_ARRAY_PARAMS) == false)
		{
			MAPPED_ARRAY_PARAMS = JSCUS_SQL._RECORD._PSCHEDULE.CUS_PREPARE_MAPPED_ARRAY_FOR_GET();
			MAPPED_ARRAY_PARAMS["PARAM_REC_PSCHEDULE_ID"] = PARAM_REC_PSCHEDULE_ID;
			MAPPED_ARRAY_PARAMS["PARAM_REC_PSCHEDULE_STATUS"] = RECORD_STATUS;		
		}		
	
		// Push to Cache
		// _______________________________________________________________________
		JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_CACHE_CALLBACK_ADDRESS.push(CALLBACK_ADDRESS);
		JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_CACHE_CONTROL_VAR.push(CONTROL_VAR);
		JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_CACHE_KEEP_RECORD.push(KEEP_RECORD);
		JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_CACHE_RECORD_STATUS.push(RECORD_STATUS);
	
		JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_CACHE_PARAM_REC_PSCHEDULE_ID.push(PARAM_REC_PSCHEDULE_ID);
			
		// Request Query
		// _______________________________________________________________________
		if
		(
			(
				JSVC_VAR.VAR_ISSET(CONTROL_VAR.TYPEOF) &&
				CONTROL_VAR.TYPEOF() == "DataGridView"
			) ||
			JSOC_ELEMENT.VAR_IS_PANEL(CONTROL_VAR)
		)
		{
			JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET
			(
				MAPPED_ARRAY_PARAMS, 
				JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_ON_RESPONSE, 
				false
			);		
		}
		else
		{
			JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_LITE
			(
				MAPPED_ARRAY_PARAMS, 
				JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_ON_RESPONSE, 
				false
			);		
		}	
	};
	
	/**
	 * Continuation on CUS_GET_THEN_POPULATE_EXECUTE(). Handles response from server.
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_ON_RESPONSE = function
	(
		IS_SUCCESS, 
		RESPONSE_STRING
	)
	{
		// Request failure (connection)
		// ...........................................
		if(IS_SUCCESS != true)
		{
			return null;
		}

		// Catch JSON Error
		// ...........................................
		else if(JSRC_JSON.REF_IS_JSTRING(RESPONSE_STRING) == false)
		{
			JSOC_DIALOG.VAR_MESSAGE_BOX
			(
				'Server error - please contact the system administrator : <br />' + RESPONSE_STRING,
				'Information',
				'OK', 'ERROR',
				null
			);	
			return;			
		}
				
		// Initialize
		// ...........................................		
		var CALLBACK_ADDRESS = JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_CACHE_CALLBACK_ADDRESS.shift();
		var CONTROL_VAR = JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_CACHE_CONTROL_VAR.shift(); 
		var KEEP_RECORD = JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_CACHE_KEEP_RECORD.shift();
		var RECORD_STATUS = JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_CACHE_RECORD_STATUS.shift();
		
		var PARAM_REC_PSCHEDULE_ID = JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE_CACHE_PARAM_REC_PSCHEDULE_ID.shift();
	
		// Populate DataGridViewComboBoxColumn
		// ...........................................
		if
		(
			JSVC_VAR.VAR_ISSET(CONTROL_VAR.TYPEOF) &&
			CONTROL_VAR.TYPEOF() == "DataGridView"
		)
		{
			CONTROL_VAR.POPULATE_FROM_QUERY 
			(
				RESPONSE_STRING,
				null,
				KEEP_RECORD,
				false,
				1,
				["2", "1"]
			);
			return null;
		}
								
		// Populate ComboBox Multiples
		// ...........................................
		if(JSVC_VAR.VAR_IS_ARRAY(CONTROL_VAR) && JSOC_ELEMENT.VAR_IS_SELECT(CONTROL_VAR[0]))
		{
			var ARRAY_INDEX = 0;
			while(CONTROL_VAR.length > ARRAY_INDEX)
			{
				JSOC_CMB.VAR_ADD_FROM_JSON
				(
					CONTROL_VAR[ARRAY_INDEX],  RESPONSE_STRING,
					"REC_PSCHEDULE_ID",
					"REC_PSCHEDULE_ID",
					KEEP_RECORD, false
				);				
				ARRAY_INDEX ++;
			}
			CALLBACK_ADDRESS(true, RESPONSE_STRING);
			return null;
		}

		// Populate ComboBox Single
		// ...........................................
		if(JSOC_ELEMENT.VAR_IS_SELECT(CONTROL_VAR))
		{
			JSOC_CMB.VAR_ADD_FROM_JSON
				(
					CONTROL_VAR,  RESPONSE_STRING,
					"REC_PSCHEDULE_ID",
					"REC_PSCHEDULE_ID",
					KEEP_RECORD, false
				);		
			CALLBACK_ADDRESS(true, RESPONSE_STRING);
			return null;
		}
							
		// Populate Form
		// ...........................................
		if(JSOC_ELEMENT.VAR_IS_PANEL(CONTROL_VAR))
		{
			JSOC_WINDOW.VAR_POPULATE_FROM_QUERY(CONTROL_VAR,  RESPONSE_STRING, ["2", "1"]);
			CALLBACK_ADDRESS(true, RESPONSE_STRING);
			return null;
		}
		
		// Return Result
		// ...........................................
		CALLBACK_ADDRESS(true, RESPONSE_STRING);
		return null;
	};

	/**
	 * =======================================================================================================
	 * Perform SQL GET requests to the table RECORD_PSCHEDULE, and populate Form with the request result. Combobox items should be pre-populated.
	 * @param FORM_VAR Parent-Element of the sub-elements to Populate.
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_FORM = function
	(
		CALLBACK_ADDRESS,
		
		FORM_VAR, 
		RECORD_STATUS,
		
		PARAM_REC_PSCHEDULE_ID,
		MAPPED_ARRAY_PARAMS
	)
	{
		return JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE
		(
			CALLBACK_ADDRESS,
			
			FORM_VAR, 
			false, 
			RECORD_STATUS, 		
			PARAM_REC_PSCHEDULE_ID,
			MAPPED_ARRAY_PARAMS
		);
	};
		
		
	
	/**
	 * =======================================================================================================
	 * Perform SQL GET requests to the table RECORD_PSCHEDULE, and populate ComboBox with the request result.
	 * @param COMBOBOX_VAR ComboBox to Populate.
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_COMBOBOX = function 
	(
		CALLBACK_ADDRESS,
		
		COMBOBOX_VAR,
		KEEP_RECORD,	
		RECORD_STATUS,
		MAPPED_ARRAY_PARAMS
	)
	{
		return JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE 
			(
				CALLBACK_ADDRESS,
				
				COMBOBOX_VAR,
				KEEP_RECORD,
				RECORD_STATUS,			
				FLAG_BIGINT_NULL,					
				MAPPED_ARRAY_PARAMS
			);
	};
				
	/** 
	 * =======================================================================================================
	 * <summary>Perform SQL GET requests to the table RECORD_PSCHEDULE, and populate DataGridViewComboBoxColumn with the request result.</summary>
	 * <param name="COMBOBOX_VAR">DataGridViewComboBoxColumn to Populate.</param>
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_DGV = function
	(
		CALLBACK_ADDRESS,
		
		DGV_VAR, 
		KEEP_RECORD,
		RECORD_STATUS,
		MAPPED_ARRAY_PARAMS
	)
	{
		return JSCUS_SQL._RECORD._PSCHEDULE.CUS_GET_THEN_POPULATE_EXECUTE
			(
				CALLBACK_ADDRESS,
				
				DGV_VAR, 
				KEEP_RECORD,
				RECORD_STATUS,			
				FLAG_BIGINT_NULL,
				MAPPED_ARRAY_PARAMS
			);		
	};
	// =======================================================================================================
	
	/** 
	 * =======================================================================================================
	 * Perform SQL SAVE request to the table RECORD_PSCHEDULE. Returns DataSet.
	 *
	 * @param VAR_PARAMETER_ARRAY Array with Request ParameterSet.
	 * @param CALLBACK_ADDRESS(bool, String) A callback method when the server response is received.
	 * @param FORWARDED_RESPONSE_STRING(String[]) Used internally. Ignore this parameter when calling this function.
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_SAVE = function
	(
		VAR_PARAMETER_ARRAY,
		CALLBACK_ADDRESS,
		FORWARDED_RESPONSE_STRING
	)
	{
		// Parameter Validation
		// _______________________________________________________________________
		JSVC_AV.VAR_VALIDATE_ARGUMENT_TYPE(VAR_PARAMETER_ARRAY, 'VAR_PARAMETER_ARRAY', 'ARRAY');
		
		// Process SQL Request
		// _______________________________________________________________________
		var PARAM_SET = "";	
		var ARRAY_INDEX = 0;
		var RAW_VAR_PARAMETER_ARRAY = JSVC_ARR.VAR_CLONE(VAR_PARAMETER_ARRAY);
		
		if(JSVC_VAR.VAR_IS_ARRAY(VAR_PARAMETER_ARRAY[0]) == true)
		{
			// Check limits per request 
			if(VAR_PARAMETER_ARRAY.length > CUSTOM_SITE_ARRAY_REQUEST_LIMIT)
			{
				throw "HTTP request is too large for single request. Limit : " + CUSTOM_SITE_ARRAY_REQUEST_LIMIT;
			}
			
			// Populate Array Items
			while(VAR_PARAMETER_ARRAY.length > 0 && ARRAY_INDEX < CUSTOM_SITE_ARRAY_REQUEST_LIMIT)
			{
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_ID[]', VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_ID"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_ACC_GROUP_ID[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_ACC_GROUP_ID"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_CAT_PRODUCT_ID[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_CAT_PRODUCT_ID"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_PRICE[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_AMOUNT_PRICE"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_COST[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_AMOUNT_COST"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D01[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D01"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D02[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D02"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D03[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D03"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D04[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D04"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D05[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D05"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D06[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D06"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D07[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D07"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D08[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D08"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D09[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D09"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D10[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D10"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D11[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D11"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D12[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D12"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D13[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D13"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D14[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D14"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D15[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D15"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D16[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D16"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D17[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D17"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D18[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D18"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D19[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D19"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D20[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D20"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D21[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D21"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D22[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D22"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D23[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D23"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D24[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D24"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D25[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D25"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D26[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D26"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D27[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D27"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D28[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D28"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D29[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D29"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D30[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D30"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D31[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_D31"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_TOTAL[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_QTY_TOTAL"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_DATE[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_DATE"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_REMARKS[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_REMARKS"]);
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_STATUS[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_STATUS"]);
				if(JSVC_VAR.VAR_ISSET(VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_ID_FILE"]))
				{
					PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_ID_FILE[]',  VAR_PARAMETER_ARRAY[0]["PARAM_REC_PSCHEDULE_ID_FILE"]);
				}
				if(ARRAY_INDEX == 0)
				{
					PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REQUEST_UNIQUE_VALUE',  VAR_PARAMETER_ARRAY[0]["PARAM_REQUEST_UNIQUE_VALUE"]);
				}
				VAR_PARAMETER_ARRAY.shift();
				ARRAY_INDEX ++;
			}					
		}
		else
		{
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_ID[]', VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_ID"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_ACC_GROUP_ID[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_ACC_GROUP_ID"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_CAT_PRODUCT_ID[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_CAT_PRODUCT_ID"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_PRICE[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_PRICE"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_AMOUNT_COST[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_AMOUNT_COST"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D01[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D01"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D02[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D02"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D03[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D03"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D04[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D04"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D05[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D05"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D06[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D06"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D07[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D07"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D08[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D08"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D09[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D09"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D10[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D10"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D11[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D11"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D12[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D12"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D13[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D13"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D14[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D14"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D15[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D15"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D16[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D16"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D17[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D17"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D18[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D18"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D19[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D19"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D20[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D20"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D21[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D21"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D22[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D22"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D23[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D23"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D24[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D24"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D25[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D25"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D26[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D26"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D27[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D27"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D28[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D28"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D29[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D29"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D30[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D30"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_D31[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_D31"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_QTY_TOTAL[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_QTY_TOTAL"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_DATE[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_DATE"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_REMARKS[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_REMARKS"]);
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_STATUS[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_STATUS"]);
			if(JSVC_VAR.VAR_ISSET(VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_ID_FILE"]))
			{
				PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REC_PSCHEDULE_ID_FILE[]',  VAR_PARAMETER_ARRAY["PARAM_REC_PSCHEDULE_ID_FILE"]);
			}
			PARAM_SET = JSRC_HTTP.REF_ADD(PARAM_SET, 'PARAM_REQUEST_UNIQUE_VALUE',  VAR_PARAMETER_ARRAY["PARAM_REQUEST_UNIQUE_VALUE"]);
		}

		// Send SQL Request [Splitted multi-request]
		// _______________________________________________________________________	
		if(VAR_PARAMETER_ARRAY.length > 0)
		{	
			CUS_SEND_REQUEST
			(
				function(IS_SUCCESS, RESPONSE_STRING)
				{
					// Merge RESPONSE_STRING
					// ...........................................
					if(JSVC_VAR.VAR_IS_ARRAY(FORWARDED_RESPONSE_STRING))
					{
						FORWARDED_RESPONSE_STRING.push(RESPONSE_STRING);
					}
					else if(JSVC_STR.VAR_IS_BLANK(FORWARDED_RESPONSE_STRING))
					{
						FORWARDED_RESPONSE_STRING = RESPONSE_STRING;
					}
					else
					{
						FORWARDED_RESPONSE_STRING = [FORWARDED_RESPONSE_STRING, RESPONSE_STRING];
					}
					
					// Validate
					// ...........................................
					if(IS_SUCCESS === false)
					{
						CALLBACK_ADDRESS(IS_SUCCESS, RESPONSE_STRING, RAW_VAR_PARAMETER_ARRAY);
						return;
					}
					
					// Validate JSON Response
					// ...........................................
					var JSON_OBJECT = JSRC_JSON.REF_CREATE(RESPONSE_STRING);
					if(JSRC_JSON.REF_IS_SUCCESS(JSON_OBJECT) === false)
					{
						CALLBACK_ADDRESS(IS_SUCCESS, RESPONSE_STRING, RAW_VAR_PARAMETER_ARRAY);
						return;
					}		
					
					// To next request
					// ...........................................	
					JSCUS_SQL._RECORD._PSCHEDULE.CUS_SAVE
					(
						VAR_PARAMETER_ARRAY,
						CALLBACK_ADDRESS,
						FORWARDED_RESPONSE_STRING
					);
				},
				JSCUS_CACHE.SERVER_URL + '/Record/pschedule/save',
				JSCUS_CACHE.SERVER_URL + '/System/nonce/get',
				PARAM_SET
			);		
		}
		
		// Send SQL Request [One-time request]
		// _______________________________________________________________________
		else
		{
			CUS_SEND_REQUEST
			(
				function(IS_SUCCESS, RESPONSE_STRING)
				{
					// Merge RESPONSE_STRING
					// ...........................................
					if(JSVC_VAR.VAR_IS_ARRAY(FORWARDED_RESPONSE_STRING))
					{
						FORWARDED_RESPONSE_STRING.push(RESPONSE_STRING);
					}
					else if(JSVC_STR.VAR_IS_BLANK(FORWARDED_RESPONSE_STRING))
					{
						FORWARDED_RESPONSE_STRING = RESPONSE_STRING;
					}
					else
					{
						FORWARDED_RESPONSE_STRING = [FORWARDED_RESPONSE_STRING, RESPONSE_STRING];
					}
					
					// Validate
					// ...........................................
					if(IS_SUCCESS === false)
					{
						CALLBACK_ADDRESS(IS_SUCCESS, RESPONSE_STRING, RAW_VAR_PARAMETER_ARRAY);
						return;
					}
					
					// Validate JSON Response
					// ...........................................
					var JSON_OBJECT = JSRC_JSON.REF_CREATE(RESPONSE_STRING);
					if(JSRC_JSON.REF_IS_SUCCESS(JSON_OBJECT) === false)
					{
						CALLBACK_ADDRESS(IS_SUCCESS, RESPONSE_STRING, RAW_VAR_PARAMETER_ARRAY);
						return;
					}		
					
					// Execute callback
					// ...........................................
					CALLBACK_ADDRESS(IS_SUCCESS, FORWARDED_RESPONSE_STRING);
				},
				JSCUS_CACHE.SERVER_URL + '/Record/pschedule/save',
				JSCUS_CACHE.SERVER_URL + '/System/nonce/get',
				PARAM_SET
			);	
		}
	};
	
	/** 
	 * =======================================================================================================
	 * Populate SP-SAVE request parameters with default value.
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_PREPARE_MAPPED_ARRAY_FOR_SAVE = function()
	{
		// Initialize
		var RESULT_MAPARRAY = [];

		// Populate default fields
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_ID"] = FLAG_BIGINT_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_ACC_GROUP_ID"] = FLAG_BIGINT_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_CAT_PRODUCT_ID"] = FLAG_BIGINT_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_AMOUNT_PRICE"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_AMOUNT_COST"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D01"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D02"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D03"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D04"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D05"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D06"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D07"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D08"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D09"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D10"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D11"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D12"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D13"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D14"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D15"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D16"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D17"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D18"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D19"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D20"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D21"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D22"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D23"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D24"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D25"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D26"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D27"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D28"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D29"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D30"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_D31"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_QTY_TOTAL"] = FLAG_DECIMAL_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_DATE"] = FLAG_DATETIME_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_REMARKS"] = FLAG_NVARCHAR_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_STATUS"] = FLAG_TINYINT_NULL;
		RESULT_MAPARRAY["PARAM_REC_PSCHEDULE_ID_FILE"] = null;
		RESULT_MAPARRAY["PARAM_REQUEST_UNIQUE_VALUE"] = '';
		
		
		// Return prepared MapArray
		return RESULT_MAPARRAY;		
	};
	
	/** 
	 * =======================================================================================================
	 * Add SP-GET request for multiple record save request.
	 * =======================================================================================================
	 */	
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_ADD_MAPPED_ARRAY_FOR_SAVE = function
	(
		VAR_GROUPED_PARAMETER_ARRAY,
		VAR_ADD_PARAMETER_ARRAY
	)
	{
		// Parameter Validation
		// _______________________________________________________________________
		JSVC_AV.VAR_VALIDATE_ARGUMENT_TYPE(VAR_GROUPED_PARAMETER_ARRAY, 'VAR_GROUPED_PARAMETER_ARRAY', 'ARRAY');
		JSVC_AV.VAR_VALIDATE_ARGUMENT_TYPE(VAR_ADD_PARAMETER_ARRAY, 'VAR_ADD_PARAMETER_ARRAY', 'ARRAY');
		
		// Push ParameterSet
		// _______________________________________________________________________
		VAR_GROUPED_PARAMETER_ARRAY.push(VAR_ADD_PARAMETER_ARRAY);
		return VAR_GROUPED_PARAMETER_ARRAY;
	};
	/** 
	 * =======================================================================================================
	 * Perform SQL DELETE request to the table RECORD_PSCHEDULE. Returns DataSet.
	 *
	 * @param PARAM_REC_PSCHEDULE_ID Primary Key ID, Can be Array.
	 * @param CALLBACK_ADDRESS(bool, String) A callback method when the server response is received.
	 * =======================================================================================================
	 */
	JSCUS_SQL._RECORD._PSCHEDULE.CUS_DELETE = function
	(
		PARAM_REC_PSCHEDULE_ID,
		CALLBACK_ADDRESS
	)
	{
		// Parameter Validation
		// _______________________________________________________________________
		JSVC_AV.VAR_VALIDATE_ARGUMENT_TYPE(PARAM_REC_PSCHEDULE_ID, 'PARAM_REC_PSCHEDULE_ID', 'ARRAY, NUMERIC');
	
		// Process SQL Request
		// _______________________________________________________________________	
		var PARAM_SET = "";
		var ARRAY_INDEX = 0;
		
		if(JSVC_VAR.VAR_IS_ARRAY(PARAM_REC_PSCHEDULE_ID) == true)
		{
			// Check limits per request 
			if(PARAM_REC_PSCHEDULE_ID.length >= CUSTOM_SITE_ARRAY_REQUEST_LIMIT)
			{
				throw "HTTP request is too large for single request. Limit : " + CUSTOM_SITE_ARRAY_REQUEST_LIMIT;
			}
			
			// Populate Array Items
			while(PARAM_REC_PSCHEDULE_ID.length > 0 && ARRAY_INDEX < CUSTOM_SITE_ARRAY_REQUEST_LIMIT)
			{
				PARAM_SET = JSRC_HTTP.REF_ADD('', 'PARAM_REC_PSCHEDULE_ID[]', PARAM_REC_PSCHEDULE_ID[ARRAY_INDEX]);
			
				PARAM_REC_PSCHEDULE_ID.shift();
				ARRAY_INDEX ++;
			}	
		}
		else
		{
			PARAM_SET = JSRC_HTTP.REF_ADD('', 'PARAM_REC_PSCHEDULE_ID[]', PARAM_REC_PSCHEDULE_ID);
		}

		// Send SQL Request
		// _______________________________________________________________________				
		CUS_SEND_REQUEST
		(
			CALLBACK_ADDRESS,
			JSCUS_CACHE.SERVER_URL + '/Record/pschedule/delete',
			JSCUS_CACHE.SERVER_URL + '/System/nonce/get',
			PARAM_SET
		);	
	};