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; } }