title=_('Recherche de fiche'); $search_card->value=''; echo $search_card->input(); $pop_tva=new IPopup('popup_tva'); $pop_tva->title=_('Choix TVA'); $pop_tva->value=''; echo $pop_tva->input(); $p_action=(isset($_REQUEST['p_action']))?$_REQUEST['p_action']:''; $gDossier=dossier::id(); $cn=new Database(dossier::id()); //menu = show a list of ledger $str_dossier=dossier::get(); $array=array( array('?p_action=ven&sa=n&'.$str_dossier,_('Nouvelle vente'),_('Nouvelle vente'),1), array('?p_action=ven&sa=l&'.$str_dossier,_('Liste ventes'),_('Liste des ventes'),2), array('?p_action=ven&sa=lnp&'.$str_dossier,_('Liste vente non payées'),_('Liste des ventes non payées'),3), array('commercial.php?p_action=client&'.$str_dossier,_('Clients'),_('Clients')), array('?p_action=impress&type=jrn&'.$str_dossier,_('Impression'),_('Impression')) ); $sa=(isset ($_REQUEST['sa']))?$_REQUEST['sa']:-1; $def=1; switch ($sa) { case 'n': $def=1; $use_predef=0; break; case 'p': $def=1; $use_predef=1; break; case 'l': $def=2; break; case 'lnp': $def=3; break; } echo ''; $href=basename($_SERVER['PHP_SELF']); //---------------------------------------------------------------------- // Encode a new invoice // empty form for encoding //---------------------------------------------------------------------- if ( $def==1 || $def == 4 ) { $Ledger=new Acc_Ledger_Sold($cn,0); // Check privilege if ( isset($_REQUEST['p_jrn']) && $User->check_jrn($_REQUEST['p_jrn']) != 'W' ) { NoAccess(); exit -1; } /* if a new invoice is encoded, we display a form for confirmation */ if ( isset ($_POST['view_invoice'] ) ) { $Ledger=new Acc_Ledger_Sold($cn,$_POST['p_jrn']); try { $Ledger->verify($_POST); } catch (Exception $e) { alert($e->getMessage()); $correct=1; } // if correct is not set it means it is correct if ( ! isset($correct)) { echo '
'; echo '
'; echo HtmlInput::hidden('sa','n'); echo HtmlInput::hidden('p_action','ven'); echo dossier::hidden(); echo $Ledger->confirm($_POST ); $chk=new ICheckBox(); $chk->selected=false; echo _("Sauvez cette opération comme modèle ?"); echo $chk->input('opd_save'); echo '
'; echo HtmlInput::submit("record",_("Enregistrement"),'onClick="return verify_ca(\'\');"'); echo HtmlInput::submit('correct',_("Corriger")); echo '
'; echo '
'; exit(); } } //------------------------------ /* Record the invoice */ //------------------------------ if ( isset($_POST['record']) ) { // Check privilege if ( $User->check_jrn($_REQUEST['p_jrn']) != 'W' ) { NoAccess(); exit -1; } $Ledger=new Acc_Ledger_Sold($cn,$_POST['p_jrn']); try { $Ledger->verify($_POST); } catch (Exception $e) { alert($e->getMessage()); $correct=1; } if ( ! isset($correct)) { echo '
'; $Ledger=new Acc_Ledger_Sold($cn,$_POST['p_jrn']); $internal=$Ledger->insert($_POST); /* Save the predefined operation */ if ( isset($_POST['opd_save'])) { $opd=new Pre_op_ven($cn); $opd->get_post(); $opd->save(); } /* Show button */ echo '

'.$Ledger->get_name().'

'; $jr_id=$cn->get_value('select jr_id from jrn where jr_internal=$1',array($internal)); echo "

"._('Opération sauvée'); if ( $Ledger->pj != '') echo ' Piece : '.h($Ledger->pj); echo "

"; if ( strcmp($Ledger->pj,$_POST['e_pj']) != 0 ) { echo '

'._('Attention numéro pièce existante, elle a du être adaptée').'

'; } printf ('%s
', $jr_id,dossier::id(),$internal); /* Show link for Invoice */ if (isset ($Ledger->doc) ) { echo $Ledger->doc; echo '
'; } /* Save the additional information into jrn_info */ $obj=new Acc_Ledger_Info($cn); $obj->save_extra($Ledger->jr_id,$_POST); echo HtmlInput::button_anchor(_('Nouvelle vente'),$href.'?p_action=ven&sa=n&'.dossier::get()); echo '
'; exit(); } } // ------------------------------ /* Display a blank form or a form with predef operation */ // ------------------------------ echo '
'; echo "
"; $array=(isset($_POST['correct'])||isset ($correct))?$_POST:null; $Ledger=new Acc_Ledger_Sold($cn,0); // // pre defined operation // if ( !isset($_REQUEST ['p_jrn'])) { $def_ledger=$Ledger->get_first('ven'); $Ledger->id=$def_ledger['jrn_def_id']; } else $Ledger->id=$_REQUEST ['p_jrn']; /* request for a predefined operation */ if ( isset($use_predef) && $use_predef == 1 && isset($_REQUEST['pre_def']) ) { // used a predefined operation // $op=new Pre_op_ven($cn); $op->set_od_id($_REQUEST['pre_def']); $p_post=$op->compute_array(); $Ledger->id=$_REQUEST ['p_jrn_predef']; echo $Ledger->input($p_post); echo '
'; echo $Ledger->input_paid(); echo '
'; echo ''; } else { echo HtmlInput::hidden("p_action","ven"); echo HtmlInput::hidden("sa","p"); echo $Ledger->input($array); echo '
'; echo $Ledger->input_paid(); echo '
'; echo ''; } echo '
'; echo HtmlInput::button('act',_('Actualiser'),'onClick="compute_all_ledger();"'); echo HtmlInput::submit("view_invoice",_("Enregistrer")); echo HtmlInput::reset(_('Effacer ')); echo '
'; echo "
"; echo '
'; echo '
'; echo HtmlInput::hidden("sa","p"); echo HtmlInput::hidden("p_action","ven"); echo dossier::hidden(); echo HtmlInput::hidden('p_jrn_predef',$Ledger->id); $op=new Pre_op_ven($cn); $op->set('ledger',$Ledger->id); $op->set('ledger_type',"VEN"); $op->set('direct','f'); echo $op->form_get(); echo '
'; $own=new Own($cn); /* if we suggest the pj n# the run the script */ if ( $own->MY_PJ_SUGGEST=='Y') { echo ''; } echo ''; echo '
'; exit(); } //------------------------------------------------------------------------------- // Listing //-------------------------------------------------------------------------------- if ( $def == 2 ) { echo '
'; // Check privilege if ( isset($_REQUEST['p_jrn']) && $User->check_jrn($_REQUEST['p_jrn']) == 'X') { NoAccess(); exit -1; } $Ledger=new Acc_Ledger_Sold($cn,0); if ( !isset($_REQUEST['p_jrn'])) { $Ledger->id=-1; } else $Ledger->id=$_REQUEST['p_jrn']; echo $Ledger->display_search_form(); //------------------------------ // UPdate the payment //------------------------------ if ( isset ( $_GET ['paid'])) { $Ledger->update_paid($_GET); } $p_array=$_GET; /* by default we should the default period */ if ( ! isset($p_array['date_start'])) { $period=$User->get_periode(); $per=new Periode($cn,$period); list($date_start,$date_end)=$per->get_date_limit(); $p_array['date_start']=$date_start; $p_array['date_end']=$date_end; } /* compute the sql stmt */ list($sql,$where)=$Ledger->build_search_sql($p_array); $max_line=$cn->count_sql($sql); $step=$_SESSION['g_pagesize']; $page=(isset($_GET['offset']))?$_GET['page']:1; $offset=(isset($_GET['offset']))?$_GET['offset']:0; $bar=jrn_navigation_bar($offset,$max_line,$step,$page); echo '
'; echo HtmlInput::hidden("sa","l"); echo HtmlInput::hidden("p_action","ven"); echo dossier::hidden(); echo $bar; list($count,$html)= $Ledger->list_operation($sql,$offset,1); echo $html; echo $bar; echo '

'.HtmlInput::submit('paid',_('Mise à jour paiement')).IButton::select_checkbox('fpaidv').IButton::unselect_checkbox('fpaidv').'

'; echo '
'; echo '
'; exit(); } //--------------------------------------------------------------------------- // Listing unpaid //--------------------------------------------------------------------------- if ( $def==3 ) { echo '
'; // Check privilege if ( isset($_REQUEST['p_jrn']) && $User->check_jrn($_REQUEST['p_jrn']) == 'X') { NoAccess(); exit -1; } $Ledger=new Acc_Ledger_Sold($cn,0); if ( !isset($_REQUEST['p_jrn'])) { $Ledger->id=-1; } else $Ledger->id=$_REQUEST['p_jrn']; echo $Ledger->display_search_form(); //------------------------------ // UPdate the payment //------------------------------ if ( isset ( $_GET ['paid'])) { $Ledger->update_paid($_GET); } $p_array=$_GET; /* compute the sql stmt */ list($sql,$where)=$Ledger->build_search_sql($p_array); if ( trim($where) != '') $sql .= ' and '.SQL_LIST_UNPAID_INVOICE; else $sql .= ' where '.SQL_LIST_UNPAID_INVOICE; $max_line=$cn->count_sql($sql); $step=$_SESSION['g_pagesize']; $page=(isset($_GET['offset']))?$_GET['page']:1; $offset=(isset($_GET['offset']))?$_GET['offset']:0; $bar=jrn_navigation_bar($offset,$max_line,$step,$page); echo '
'; echo HtmlInput::hidden("sa","lnp"); echo HtmlInput::hidden("p_action","ven"); echo dossier::hidden(); echo $bar; list($count,$html)= $Ledger->list_operation($sql,$offset,1); echo $html; echo $bar; echo '

'.HtmlInput::submit('paid',_('Mise à jour paiement')).IButton::select_checkbox('fpaidv').IButton::unselect_checkbox('fpaidv').'

'; echo '
'; echo '
'; exit(); }