Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

quicksearcher.ui.h

00001 /****************************************************************************
00002 ** ui.h extension file, included from the uic-generated form implementation.
00003 **
00004 ** If you wish to add, delete or rename functions or slots use
00005 ** Qt Designer which will update this file, preserving your code. Create an
00006 ** init() function in place of a constructor, and a destroy() function in
00007 ** place of a destructor.
00008 *****************************************************************************/
00009 
00010 void QuickSearcher::init()
00011 {
00012     prods = new QSqlCursor( "Inv_products", TRUE ) ;
00013     parts = new QSqlCursor( "Inv_parts", TRUE ) ;
00014     prodsTable->setLeftMargin( 0 ) ;
00015     prodsTable->setColumnStretchable( 1, TRUE ) ;
00016     prodsTable->setColumnWidth( 1, 200 ) ;
00017     partsTable->setLeftMargin( 0 ) ;
00018     prodsTable->setColumnStretchable( 0, TRUE ) ;
00019     prodsTable->setFilter( "recid='-1'" ) ;
00020     prodsTable->refresh( QDataTable::RefreshAll ) ;
00021     partsTable->setFilter( "recid='-1'" ) ;
00022     partsTable->refresh( QDataTable::RefreshAll ) ;
00023     clearSelection() ;
00024 }
00025 
00026 void QuickSearcher::requiredChanged( const QString & want )
00027 {
00028     QString req = want.stripWhiteSpace() ;
00029     if ( req.isEmpty() ) {
00030         prodsTable->setFilter( "recid='-1'" ) ;
00031         prodsTable->refresh() ;
00032         partsTable->setFilter( "recid='-1'" ) ;
00033         partsTable->refresh() ;
00034         clearSelection() ;
00035     } else {
00036         req = req.upper() ;
00037         prodsTable->setFilter( QString( "prod_ref LIKE '%1%' OR prod_name LIKE '%%2%'" ).arg( req ).arg( req ) ) ;
00038         qDebug( prodsTable->filter() ) ;
00039         prodsTable->refresh() ;
00040         if ( prodsTable->numRows() > 0 ) {
00041             prodsTable->ensureCellVisible( 0, 0 ) ;
00042             prodsTable->selectRow( 0 ) ;
00043             okButton->setEnabled( TRUE ) ;          
00044         } else {
00045             partsTable->setFilter( "recid='-1'" ) ;
00046             partsTable->refresh() ;
00047             clearSelection() ;
00048         }
00049     }
00050 }
00051 
00052 
00053 void QuickSearcher::findParts( QSqlRecord * buffer )
00054 {
00055     currSel->setText( buffer->value( "prod_name" ).toString() ) ;
00056     partsTable->setFilter( QString( "prodid='%1'" ).arg( buffer->value( "recid" ).toString() ) ) ;
00057     partsTable->refresh() ;
00058     if ( partsTable->numRows() > 0 ) {
00059         partsTable->ensureCellVisible( 0, 0 ) ;
00060         partsTable->selectRow( 0 ) ;
00061         okButton->setEnabled( TRUE ) ;
00062     } else {
00063         clearSelection() ;
00064     }
00065 }
00066 
00067 
00068 void QuickSearcher::showSelected( QSqlRecord * buffer )
00069 {
00070     currBarcode->setText( buffer->value( "serial" ).toString() ) ;
00071     currRetail->setText( partsTable->text( partsTable->currentRow(), 1 ) ) ;
00072 }
00073 
00074 
00075 void QuickSearcher::selectedOK( int row, int col )
00076 {
00077     partsTable->selectRow( row ) ;
00078     accept() ;
00079 }
00080 
00081 
00082 void QuickSearcher::clearSelection()
00083 {
00084     currSel->setText( "" ) ;
00085     currBarcode->setText( "" ) ;
00086     currRetail->setText( "" ) ;
00087     okButton->setEnabled( FALSE ) ;
00088 }
00089 
00090 
00091 void QuickSearcher::okClicked()
00092 {
00093     selectedOK( partsTable->currentRow(), 0 ) ;
00094 }

 

L.A.B. Project © 2001-2004 LAB Project & DJ Anubis