Go to the source code of this file.
Functions | |
| function | add_row (p_table, p_seq) |
| javascript for the analytic accountancy | |
| function | anc_add_row (tableid) |
| add a row in misc operation for ANC the code must be adapted for that | |
| function | anc_refresh_remain (p_table, p_seq) |
| Refresh remain of account. | |
| function | anc_remove_operation (p_dossier, p_oa_group) |
| remove an operation | |
| function | caod_checkTotal () |
| function | compute_total_table (p_table, seq) |
| Compute total of a form from Anc_Operation::display_form_plan. | |
| function | filter_anc (obj, queryString) |
| this function is called before the querystring is send to the fid2.php, add a filter based on the ledger 'p_jrn' | |
| function | search_anc_form (obj) |
| function | search_ca (p_dossier, p_target, p_source) |
| open a window for searching a CA account, | |
| function | verify_ca (div) |
| Check the amount of the CA. | |
| function add_row | ( | p_table, | |
| p_seq | |||
| ) |
javascript for the analytic accountancy
add a row for the CA
| p_table_id | |
| p_amount | amount to reach |
Definition at line 29 of file anc_script.js.
References alert(), anc_refresh_remain(), compute_total_table(), g(), and value.
Referenced by Anc_Operation::display_form_plan().
{
var mytable=g(p_table).tBodies[0];
var max=parseFloat(g('amount_t'+p_seq).value);
if ( ! mytable )
{
return;
}
var new_value=mytable.rows.length+1;
if ( mytable.rows.length > 5 )
{
alert("Maximum 5 lignes ");
return;
}
amount=compute_total_table(p_table,p_seq);
if ( max < amount )
{
alert('Montant incorrect : max = '+max+" calculé="+amount);
return;
}
// For the detail view (modify_op) there is several form and then several time the
// element
var rowToCopy=mytable.rows[1];
var row=mytable.insertRow(mytable.rows.length);
for ( var i=0;i< rowToCopy.cells.length;i++)
{
var cell=row.insertCell(i);
var txt=rowToCopy.cells[i].innerHTML;
// txt=txt.replace(/row_1/g,"row_"+new_value);
cell.innerHTML=txt;
}
var col=document.getElementsByName("val["+p_seq+"][]");
col[col.length-1].value=max-amount;
anc_refresh_remain(p_table,p_seq);
}
| function anc_add_row | ( | tableid | ) |
add a row in misc operation for ANC the code must be adapted for that
Definition at line 332 of file anc_script.js.
References g(), nb(), style, and value.
{
style='class="input_text"';
var mytable=g(tableid).tBodies[0];
var nNumberRow=mytable.rows.length;
var oRow=mytable.insertRow(nNumberRow);
var rowToCopy=mytable.rows[1];
var nNumberCell=rowToCopy.cells.length;
var nb=g("nbrow");
var oNewRow = mytable.insertRow(nNumberRow);
for ( var e=0;e < nNumberCell;e++)
{
var newCell=oRow.insertCell(e);
var tt=rowToCopy.cells[e].innerHTML;
new_tt=tt.replace(/pop0/g,"pop"+nb.value);
new_tt=new_tt.replace(/pamount0/g,"pamount"+nb.value);
new_tt=new_tt.replace(/pdeb0/g,"pdeb"+nb.value);
newCell.innerHTML=new_tt;
new_tt.evalScripts();
}
$("pamount"+nb.value).value="0";
nb.value++;
}
| function anc_refresh_remain | ( | p_table, | |
| p_seq | |||
| ) |
Refresh remain of account.
analytic
| p_table | table id |
| p_seq | sequence of the line |
Definition at line 98 of file anc_script.js.
References alert(), compute_total_table(), g(), style, and value.
Referenced by add_row().
{
try
{
var tot_line=parseFloat(g('amount_t'+p_seq).value);
var tot_table=compute_total_table(p_table,p_seq);
var remain = tot_line-tot_table;
remain=Math.round(remain *100)/100;
var popup_table=p_table.toString();
p_table=popup_table.replace("popup","");
$('remain'+p_table).innerHTML=remain;
if (remain == 0)
{$('remain'+p_table).style.color="green"}
else
{$('remain'+p_table).style.color="red"}
}catch (a)
{
alert(a.message);
}
}
| function anc_remove_operation | ( | p_dossier, | |
| p_oa_group | |||
| ) |
remove an operation
| p_dossier | is the folder |
| p_oa_group | is the group of the analytic operation |
Definition at line 315 of file anc_script.js.
References encodeJSON(), and g().
{
var a=confirm("Etes-vous sur de vouloir effacer cette operation ?\n");
if ( a == false ) return;
var obj={"oa":
p_oa_group,"gDossier":
p_dossier,"op":"remove_anc"};
var queryString=encodeJSON(obj);
g(p_oa_group).style.display='none';
var e=new Ajax.Request("ajax_misc.php",
{method:'get',parameters:queryString});
}
| function caod_checkTotal | ( | ) |
Definition at line 248 of file anc_script.js.
References g().
{
var ie4=false;
if ( document.all )
{
ie4=true;
}// Ajouter getElementById par document.all[str]
var total_deb=0.0;
var total_cred=0.0;
var nb_item=g('nbrow').value;
for (var i=0;i <nb_item ;i++)
{
var doc_amount=g("pamount"+i);
if ( ! doc_amount )
{
return;
}
var side=g("pdeb"+i);
if ( ! side )
{
return;
}
var amount=parseFloat(doc_amount.value);
if ( isNaN(amount) == true)
{
amount=0.0;
}
if ( side.checked == false )
{
total_cred+=amount;
}
if ( side.checked == true )
{
total_deb+=amount;
}
}
r_total_cred=Math.round(total_cred*100)/100;
r_total_deb=Math.round(total_deb*100)/100;
g('totalDeb').innerHTML=r_total_deb;
g('totalCred').innerHTML=r_total_cred;
if ( r_total_deb != r_total_cred )
{
g("totalDiff").style.color="red";
g("totalDiff").style.fontWeight="bold";
g("totalDiff").innerHTML="Différence";
diff=total_deb-total_cred;
diff=Math.round(diff*100)/100;
g("totalDiff").innerHTML=diff;
}
else
{
g("totalDiff").innerHTML="0.0";
}
}
| function compute_total_table | ( | p_table, | |
| seq | |||
| ) |
Compute total of a form from Anc_Operation::display_form_plan.
| p_table | table id |
| seq | sequence of the line |
Definition at line 73 of file anc_script.js.
References alert(), and value.
Referenced by add_row(), and anc_refresh_remain().
| function filter_anc | ( | obj, | |
| queryString | |||
| ) |
this function is called before the querystring is send to the fid2.php, add a filter based on the ledger 'p_jrn'
| obj | is the input field |
| queryString | is the queryString to modify |
Definition at line 362 of file anc_script.js.
{
var pa_id=obj.plan_ctl;
queryString=queryString+"&pa_id="+pa_id;
return queryString;
}
| function search_anc_form | ( | obj | ) |
Definition at line 223 of file anc_script.js.
References alert(), name, remove_waiting_box(), and waiting_box().
{
var qs="op=resultancsearch&ctl=searchanc&";
var name=obj.id;
qs+=$(name).serialize(false);
waiting_box();
var action=new Ajax.Request ( 'ajax_misc.php',
{
method:'get',
parameters:qs,
onFailure:null,
onSuccess:function(req){
try{
remove_waiting_box();
$('searchanc').innerHTML=req.responseText;
req.responseText.evalScripts();
} catch(e){
alert(e.message);
}
}
}
);
return false;
}
| function search_ca | ( | p_dossier, | |
| p_target, | |||
| p_source | |||
| ) |
open a window for searching a CA account,
| p_dossier | dossier id |
| p_target | ctrl to update |
| p_source | ctrl containing the pa_id |
Definition at line 190 of file anc_script.js.
References add_div(), alert(), fixed_position(), g(), remove_waiting_box(), removeDiv(), style, and waiting_box().
{
var pa_id=g(p_source).value;
waiting_box();
removeDiv('search_anc');
var qs="op=openancsearch&gDossier="+p_dossier+"&ctl=searchanc";
qs+="&c2="+pa_id+"&c1="+p_target;
var action=new Ajax.Request ( 'ajax_misc.php',
{
method:'get',
parameters:qs,
onFailure:null,
onSuccess:function(req){
try{
remove_waiting_box();
var pos=fixed_position(250,150)+";width:30%;height:50%";
add_div({
id:"searchanc",
drag:1,
cssclass:"inner_box",
style:pos
});
$('searchanc').innerHTML=req.responseText;
} catch(e){
alert(e.message);
}
}
}
);
}
| function verify_ca | ( | div | ) |
Check the amount of the CA.
| p_style | : error or ok, if ok show a ok box if the amount are equal |
Definition at line 125 of file anc_script.js.
References alert(), g(), table, and value.
{
try
{
var idx=0;
var amount_error=0;
// put a maximum
while (idx < 50 )
{
var table=div+'t'+idx;
if ( g(table) )
{
var total_amount=0;
// table is found compute the different val[]
var array_value=document.getElementsByName('val['+idx+'][]');
for (var i=0;i < array_value.length;i++ )
{
if ( isNaN(array_value[i].value))
{
array_value[i].value=0;
}
total_amount+=parseFloat(array_value[i].value);
}
var amount=parseFloat(g('amount_t'+idx).value);
var diff=amount-total_amount;
if ( Math.round(diff,2)!= 0.0)
{
g(table).style.backgroundColor='red';
amount_error++;
}
else
{
g(table).style.backgroundColor='lightgreen';
}
idx++;
}
else break;
}
if ( amount_error != 0 )
{
alert('Désolé, les montants pour la comptabilité analytique sont incorrects');
return false;
}
return true;
}
catch (e)
{
alert(e.message);
return false;
}
}