230 lines
8.9 KiB
PHP
230 lines
8.9 KiB
PHP
<?php
|
|
$PARENT_SCRIPTNAME='external_table.php';
|
|
include_once 'script_auth.php';
|
|
|
|
include_once 'class/PregReplaceCallbackClass.php';
|
|
include_once 'init/initialisation_parameter.php';
|
|
include_once 'headerFile.php';
|
|
include_once 'incl.php';
|
|
|
|
header("Cache-Control: no-cache, must-revalidate");
|
|
// Date in the past
|
|
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
|
|
include_once 'class/ORAConnectionClass.php';
|
|
|
|
$ora_obj = new ORAConnectionClass('init/ORA_INIT.php');
|
|
$ora_res = $ora_obj->ORA_PConnect();
|
|
if (!$ora_res){
|
|
echo "<BR>Error : " . htmlspecialchars($ora_obj->last_error_msg) . "<br>";
|
|
exit();
|
|
}
|
|
|
|
initAjaxParamTemplate($_REQUEST['action']);
|
|
|
|
if ($_REQUEST['action'] == "getData") {
|
|
$result = getData($ora_obj);
|
|
} elseif ($_REQUEST['action'] == "newData") {
|
|
$result = newData($ora_obj);
|
|
} else {
|
|
$result = -1;
|
|
}
|
|
|
|
echo $result;
|
|
unset($_SESSION['TEMPLATE_ARRAY_ADDR']);
|
|
if ($ora_obj->conn) {
|
|
$ora_obj->ORA_Close();
|
|
#echo "connection closed.<br>";
|
|
}
|
|
|
|
function initAjaxParamTemplate($action) {
|
|
if ($action == "getData") {
|
|
$ajaxParamTemplate['TABLEDATA'] = <<< params
|
|
<table width="100%" cellpadding="2" cellspacing="1" border="0" style="layout:auto" class="font11">
|
|
<tr>
|
|
<td colspan=3><span id="ERR_MSG" style="font: italic; color: #FF0000"><<ERR_MSG>></span></td>
|
|
</tr>
|
|
<tr>
|
|
<td nowrap>Nama Table</td>
|
|
<td>:</td>
|
|
<td><input type="text" name="TAB_NAME" note="Nama Table" dbname="TAB_NAME" ATTRIB="SM" value="<<TAB_NAME>>" readonly class="font11"></td>
|
|
</tr>
|
|
<tr>
|
|
<td nowrap>Modul</td>
|
|
<td>:</td>
|
|
<td>
|
|
<SELECT NAME="MODUL" class="font11" dbname="MODUL" ATTRIB="SM" note="Modul" onchange="javascript:chgAttr(DATAFORM.saveData)">
|
|
<<OPTION_MODUL>>
|
|
</SELECT>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td nowrap>Methode Posting</td>
|
|
<td>:</td>
|
|
<td>
|
|
<SELECT NAME="METHOD" class="font11" dbname="METHOD" ATTRIB="SM" note="Tipe Data Purging" onchange="javascript:chgAttr(DATAFORM.saveData)">
|
|
<<OPTION_METHOD>>
|
|
</SELECT>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td nowrap>Proses Purging</td>
|
|
<td>:</td>
|
|
<td>
|
|
<SELECT NAME="PURGING_TYPE" class="font11" dbname="PURGING_TYPE" ATTRIB="SM" note="Proses Purging" onkeyup="javascript:chgAttr(DATAFORM.saveData)">
|
|
<<OPTION_PURGING_TYPE>>
|
|
</SELECT>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td nowrap>Field untuk Purging</td>
|
|
<td>:</td>
|
|
<td><input type="text" name="PURGING_FIELD" value="<<PURGING_FIELD>>" dbname="PURGING_FIELD" ATTRIB="SM" onchange="javascript:chgAttr(DATAFORM.saveData)"></td>
|
|
</tr>
|
|
<tr>
|
|
<td nowrap>Tipe Data Field untuk Purging</td>
|
|
<td>:</td>
|
|
<td>
|
|
<SELECT NAME="PURGING_DATA_TYPE" class="font11" dbname="PURGING_DATA_TYPE" ATTRIB="SM" note="Tipe Data Purging" onchange="javascript:chgAttr(DATAFORM.saveData)">
|
|
<<OPTION_PURGING_DATA_TYPE>>
|
|
</SELECT>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan=3>
|
|
<<BUTTON_CONTAINER>>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
params;
|
|
|
|
} else {
|
|
$ajaxParamTemplate['TABLEDATA'] = <<< params
|
|
<table width="100%" cellpadding="2" cellspacing="1" border="0" style="layout:auto" class="font11">
|
|
<tr>
|
|
<td nowrap>Nama Table</td>
|
|
<td>:</td>
|
|
<td><input type="text" name="NEW_TAB_NAME" note="Nama Table" dbname="TAB_NAME" ATTRIB="SM" value="<<TAB_NAME>>" readonly class="font11" onkeyup='javascript:chgAttr(NEWDATAFORM.saveNewData)'></td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td nowrap>Modul</td>
|
|
<td>:</td>
|
|
<td>
|
|
<SELECT NAME="NEW_MODUL" class="font11" dbname="MODUL" ATTRIB="SM" note="Modul" onkeyup="javascript:chgAttr(NEWDATAFORM.saveNewData)">
|
|
<<OPTION_MODUL>>
|
|
</SELECT>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td nowrap>Methode Posting</td>
|
|
<td>:</td>
|
|
<td>
|
|
<SELECT NAME="NEW_METHOD" class="font11" dbname="METHOD" ATTRIB="SM" note="Tipe Data Purging" onkeyup="javascript:chgAttr(NEWDATAFORM.saveNewData)">
|
|
<<OPTION_METHOD>>
|
|
</SELECT>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td nowrap>Proses Purging</td>
|
|
<td>:</td>
|
|
<td>
|
|
<SELECT NAME="NEW_PURGING_TYPE" class="font11" dbname="PURGING_TYPE" ATTRIB="SM" note="Proses Purging" onkeyup="javascript:chgAttr(NEWDATAFORM.saveNewData)">
|
|
<<OPTION_PURGING_TYPE>>
|
|
</SELECT>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td nowrap>Field untuk Purging</td>
|
|
<td>:</td>
|
|
<td><input type="text" name="NEW_PURGING_FIELD" value="<<PURGING_FIELD>>" dbname="PURGING_FIELD" ATTRIB="SM" onkeyup="javascript:chgAttr(NEWDATAFORM.saveNewData)"></td>
|
|
</tr>
|
|
<tr>
|
|
<td nowrap>Tipe Data Field untuk Purging</td>
|
|
<td>:</td>
|
|
<td>
|
|
<SELECT NAME="NEW_PURGING_DATA_TYPE" class="font11" dbname="PURGING_DATA_TYPE" ATTRIB="SM" note="Tipe Data Purging" onkeyup="javascript:chgAttr(NEWDATAFORM.saveNewData)">
|
|
<<OPTION_PURGING_DATA_TYPE>>
|
|
</SELECT>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan=3>
|
|
<<BUTTON_CONTAINER>>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
params;
|
|
|
|
}
|
|
$_SESSION['TEMPLATE_ARRAY_ADDR'] = &$ajaxParamTemplate;
|
|
}
|
|
|
|
function getData(&$ora_obj){
|
|
$templObj = new PregReplaceCallbackClass('');
|
|
$templObj->SetTemplateArray('TEMPLATE_ARRAY_ADDR');
|
|
|
|
$paramSQL = <<< sql
|
|
SELECT i.tab_name, i.purging_type, i.modul, i.purging_field,
|
|
i.purging_data_type, i.purging_filter, i.method
|
|
FROM external_data_tab i
|
|
WHERE i.tab_name = '{$_REQUEST['TAB_NAME']}'
|
|
ORDER BY i.tab_name
|
|
sql;
|
|
|
|
$paramArray = $ora_obj->ORA_SelectData($paramSQL,null,null,OCI_FETCHSTATEMENT_BY_ROW);
|
|
if ($ora_obj->nrows>0) {
|
|
$flagModul = Option_Modul();
|
|
$OPTION_MODUL = format_html_option($flagModul, $paramArray[0]['MODUL']);
|
|
$flagPurgingType = Option_Ya_Tidak();
|
|
$OPTION_PURGING_TYPE = format_html_option($flagPurgingType, $paramArray[0]['PURGING_TYPE']);
|
|
$flagDataType = Option_DataType();
|
|
$OPTION_PURGING_DATA_TYPE = format_html_option($flagDataType, $paramArray[0]['PURGING_DATA_TYPE']);
|
|
$flagMethod = Option_Method();
|
|
$OPTION_METHOD = format_html_option($flagMethod, $paramArray[0]['METHOD']);
|
|
|
|
$_SESSION['ARRAY_ADDR_VAR'] = &$variable_array;
|
|
$templObj->SetFormatName('TABLEDATA');
|
|
foreach ($paramArray as $pkey => $pval) {
|
|
foreach ($pval as $rkey => $rval) {
|
|
$variable_array[$rkey] = htmlspecialchars($rval);
|
|
}
|
|
$variable_array['BUTTON_CONTAINER'] = create_button('0');
|
|
$variable_array['READ_ONLY'] = '';
|
|
$variable_array['OPTION_MODUL'] = $OPTION_MODUL;
|
|
$variable_array['OPTION_METHOD'] = $OPTION_METHOD;
|
|
$variable_array['OPTION_PURGING_TYPE'] = $OPTION_PURGING_TYPE;
|
|
$variable_array['OPTION_PURGING_DATA_TYPE'] = $OPTION_PURGING_DATA_TYPE;
|
|
$result .= $templObj->PregReplaceCallback();
|
|
}
|
|
} else {
|
|
$result = -1;
|
|
}
|
|
return $result;
|
|
}
|
|
|
|
function newData(&$ora_obj){
|
|
$templObj = new PregReplaceCallbackClass('');
|
|
$templObj->SetTemplateArray('TEMPLATE_ARRAY_ADDR');
|
|
|
|
$flagModul = Option_Modul();
|
|
$OPTION_MODUL = format_html_option($flagModul);
|
|
$flagMethod = Option_Method();
|
|
$OPTION_METHOD = format_html_option($flagMethod);
|
|
$flagPurgingType = Option_Ya_Tidak();
|
|
$OPTION_PURGING_TYPE = format_html_option($flagPurgingType);
|
|
$flagDataType = Option_DataType();
|
|
$OPTION_PURGING_DATA_TYPE = format_html_option($flagDataType);
|
|
|
|
$_SESSION['ARRAY_ADDR_VAR'] = &$variable_array;
|
|
$templObj->SetFormatName('TABLEDATA');
|
|
$variable_array['OPTION_MODUL'] = $OPTION_MODUL;
|
|
$variable_array['OPTION_METHOD'] = $OPTION_METHOD;
|
|
$variable_array['OPTION_PURGING_TYPE'] = $OPTION_PURGING_TYPE;
|
|
$variable_array['OPTION_PURGING_DATA_TYPE'] = $OPTION_PURGING_DATA_TYPE;
|
|
$variable_array['BUTTON_CONTAINER'] = create_button('1');
|
|
$result .= $templObj->PregReplaceCallback();
|
|
return $result;
|
|
}
|
|
|
|
|
|
?>
|