- Page principale
- Classes
- Fichiers
- Pages associées

# /home/eric/Bureau/MedinTux-V-2.00/Plug/Compta2/compta/ui/immobilisations_add.ui.h

    00001 /****************************************************************************
    00002 ** ui.h extension file, included from the uic-generated form implementation.
    00003 **
    00004 ** If you want to add, delete, or rename functions or slots, use
    00005 ** Qt Designer to update this file, preserving your code.
    00006 **
    00007 ** You should not define a constructor or destructor in this file.
    00008 ** Instead, write your code in functions called init() and destroy().
    00009 ** These will automatically be called by the form's constructor and
    00010 ** destructor.
    00011 *****************************************************************************/
    00012
    00013
    00014
    00015
    00016 void Immobilisations_Add::init()
    00017 { pMB = 0;
    00018   currentUser = 0;
    00019   paramOK = FALSE;
    00020   forUpdate = FALSE;
    00021   seeOnly = FALSE;
    00022   imm = new Immobilisations();
    00023   if (!imm) return ;
    00024   cptListe = new COMPTES_LISTE;
    00025   if (!cptListe) return ;
    00026   cptListe->clear();
    00027   residuel->hide();
    00028 }
    00029
    00030 void Immobilisations_Add::destroy()
    00031 { if (imm) delete imm;
    00032   if (cptListe) delete cptListe;
    00033 }
    00034
    00035
    00039 void Immobilisations_Add::setParams(    Utilisateurs*   curUsr,
    00040                                 const char*     date,                   // format "dd-MM-yyyy"
    00041                                 ComptaMoteurBase* pMoteurBase)
    00042 { pMB = pMoteurBase;
    00043   currentUser = curUsr;
    00044   setDateObserv(date);
    00045   if (!pMB->getComptes(*cptListe))
    00046    QMessageBox::information(this, TR("Erreur de base de données"), pMB->m_messageErreur, TR("Ok"),"","",1,0);
    00047   int defautCpt = 0;
    00048   int i = 0;
    00049   for (COMPTES_LISTE::iterator it=cptListe->begin(); it!=cptListe->end();++it)
    00050    { listeComptes->insertItem( (*it).getLibelle() );
    00051      if ((*it).isDefaut()) defautCpt=i;
    00052      i++;
    00053    }
    00054   listeComptes->setCurrentItem(defautCpt);
    00055   paramOK = TRUE;
    00056 }
    00057
    00058
    00059 void Immobilisations_Add::setImm(Immobilisations* pImm)
    00060 {libelle->setText( pImm->getNom() );
    00061  valeur->setText( QString::number(pImm->getValeur()) );
    00062  setDateObserv( pImm->getDateService() );
    00063  id_imm_toModif = pImm->getId();
    00064  QString tmp = pImm->getRemarque();
    00065  duree->setText( QString::number(pImm->getDuree()) );
    00066  resultatTxt->setText( pImm->getResultat() );
    00067  if (pImm->getMode() == 0)
    00068   { lineaire->setChecked(TRUE);  degressif->setChecked(FALSE); }
    00069  else { lineaire->setChecked(FALSE);  degressif->setChecked(TRUE); }
    00070  residuel->setText( QString::number(pImm->getResiduel()) );
    00071 }
    00072
    00073
    00074 void Immobilisations_Add::setSeeOnly(bool b)
    00075 { seeOnly = b; }
    00076
    00077
    00078 void Immobilisations_Add::getImmobilisation()
    00079 {if (imm)
    00080  { if (forUpdate) imm->setId( id_imm_toModif );
    00081    imm->setIdUsr( currentUser->getId() );
    00082    imm->setIdCompte( (*cptListe->at( listeComptes->currentItem() )).getId() );
    00083    imm->setNom( libelle->text() );
    00084    imm->setDateService( getDateObserv() ); // format yyyy-MM-dd
    00085    imm->setDuree( duree->text().toInt() );
    00086    imm->setResultat( resultatTxt->text() );
    00087
    00088    if (lineaire->isChecked()) imm->setMode ( 0 );
    00089    else imm->setMode(1);
    00090
    00091    imm->setValeur( valeur->text().toInt() );
    00092    imm->setResiduel( residuel->text().toInt() );
    00093    imm->setRemarque("");
    00094  }
    00095
    00096 }
    00097
    00098
    00099 void Immobilisations_Add::buttonOk_clicked()
    00100 {if (seeOnly)
    00101  { accept(); }
    00102  else
    00103  {// Vérifie les champs obligatoires : nom, praticien, date
    00104   if (libelle->text().stripWhiteSpace() == "")
    00105    QMessageBox::information(this, TR("Formulaire incomplet."), TR("Vous devez obligatoirement renseigner le libellé de la transaction."),TR("Ok"),"","",1,0);
    00106 //   else if ((categorie->text().stripWhiteSpace() == "") || (!categorieSelected))
    00107 //    QMessageBox::information(this, TR("Formulaire incomplet."), TR("Vous devez obligatoirement renseigner la catégorie de la transaction à l'aide de la fenêtre prévue à cet effet. Cliquez sur le bouton \"Choisir\"."),TR("Ok"),"","",1,0);
    00108 //   else if (montant->text().stripWhiteSpace() == "")
    00109 //    QMessageBox::information(this, TR("Formulaire incomplet."), TR("Vous devez obligatoirement renseigner un montant à la transaction."),TR("Ok"),"","",1,0);
    00110 //   else if (modePaiement->currentItem() == 0)
    00111 //    QMessageBox::information(this, TR("Formulaire incomplet."), TR("Vous devez obligatoirement spécifier le mode de paiement de la transaction."),TR("Ok"),"","",1,0);
    00112   else
    00113    { QString msg = "";
    00114      getImmobilisation();
    00115      bool sansErreur = FALSE;
    00116      if (!forUpdate)
    00117      {  sansErreur = pMB->saveImmobToBase(imm);
    00118         msg = TR("Mouvement sauvegardé dans la base de données sans erreur.");
    00119      }
    00120      else
    00121      {  sansErreur = pMB->updateImmob(imm);
    00122         msg = TR("Mouvement mis à jour dans la base de données sans erreur.");
    00123      }
    00124      if (!sansErreur)
    00125        // une erreur est survenue --> afficher l'erreur.
    00126       { QMessageBox *b = new QMessageBox(this);
    00127         b->setText( pMB->m_messageErreur );
    00128         b->exec();
    00129         delete b;
    00130       }
    00131      else
    00132       { QMessageBox::information(this, TR("Information"), msg , TR("Ok"),"","",1,0);
    00133         accept();
    00134       }
    00135    }
    00136  } // Fin if seeOnly
    00137 }
    00138
    00139
    00140
    00141 void Immobilisations_Add::but_Calculer_clicked()
    00142 { getImmobilisation();
    00143   imm->prepareResultat();
    00144   resultatTxt->setText( imm->getResultat() );
    00145 }
    00146
    00147
    00148 void Immobilisations_Add::buttonCancel_clicked()
    00149 { reject(); }
    00150
    00151
    00152 void Immobilisations_Add::buttonHelp_clicked()
    00153 {
    00154
    00155 }
    00156
    00160
    00163 void Immobilisations_Add::mois_activated( int  )
    00164 {  int nbJours = 0;
    00165    int ms = mois->currentItem() + 1;
    00166    QString toAdd = "";
    00167    int jj = jour->currentItem();
    00168    jour->clear();
    00169
    00170    if ((ms == 1) ||(ms == 3) ||(ms == 5) ||(ms == 7) ||(ms == 8) ||(ms == 10) ||(ms == 12) )
    00171         nbJours = 31;
    00172    else if ((ms == 2))
    00173    { // Test année bissextile
    00174        if (annee->currentText().toInt() % 4 == 0) nbJours = 29;
    00175        else nbJours = 28;
    00176    }
    00177    else nbJours = 30;
    00178
    00179    for (int i = 0; i < nbJours; ++i)
    00180     { toAdd = QString::number(i+1);
    00181        if (i < 9) toAdd.prepend("0");
    00182       jour->insertItem(toAdd);
    00183     }
    00184
    00185    if (jj >= jour->count()) jj = jour->count() - 1;
    00186    jour->setCurrentItem(jj);
    00187 }
    00188
    00189
    00193 void Immobilisations_Add::annee_activated( int  )
    00194 { if (mois->currentItem() == 1)     mois_activated( 1 );  }
    00195
    00196
    00200 QString Immobilisations_Add::getDateObserv()
    00201 { QString tmp = "";
    00202   tmp = QString::number(mois->currentItem() + 1);
    00203   if (mois->currentItem() < 9) tmp.prepend("0");
    00204 //  return jour->currentText() + "-" + tmp + "-" + annee->currentText();
    00205   return annee->currentText() + "-" + tmp + "-" + jour->currentText();
    00206 }
    00207
    00208
    00212 void Immobilisations_Add::setDateObserv(QString dt_str)
    00213 { // Passe du format "dd-MM-yyyy" au format "yyyy-MM-dd"
    00214   QString tmp = pMB->dateForSQL( dt_str );
    00215   QDate dt = QDate::fromString(tmp, Qt::ISODate);
    00216   setDateObserv(dt);
    00217 }
    00218
    00222 void Immobilisations_Add::setDateObserv(QDate dt)
    00223 { int an = dt.year() - 5;
    00224   annee->clear();
    00225   for (int i = 0; i < 10; i++)
    00226   { annee->insertItem(QString::number( an + i ));
    00227   }
    00228   an += 5;
    00229   annee->setCurrentText(QString::number(an));
    00230   mois->setCurrentItem(dt.month() - 1);
    00231   mois_activated( dt.month() - 1);
    00232   jour->setCurrentItem( dt.day() - 1);
    00233 }
    00234
    00235
    00239 void Immobilisations_Add::setForUpdateOnly(bool up)
    00240 { forUpdate = up; }
    00241
    00242
    00243 void Immobilisations_Add::lineaire_toggled( bool b )
    00244 { if (b) residuel->show(); else residuel->hide();  }
    00245
    00246