Clipper On Line • Ver Tópico - Capturar o codigo do cliente/paciente

Capturar o codigo do cliente/paciente

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

 

Capturar o codigo do cliente/paciente

Mensagempor marcosLP » 20 Dez 2021 23:24

vcs ajudaram muito em uma duvida. Gostaria de abusar mais um pouco num problema que me atormenta:

********************
/*
* MINIGUI - Harbour Win32 GUI library Demo
*
* Author: Igor Nazarov
*
* Revised by Grigory Filatov <gfilatov@inbox.ru>
*/

#include "minigui.ch"
#include "tsbrowse.ch"

STATIC aFont := {}

MEMVAR oBrw_1

FUNCTION Main()

   LOCAL cDbf := GetStartupFolder() + '\ARQ_CLI.dbf'

   REQUEST DBFCDX , DBFFPT

   SET CENTURY ON
   SET DELETED ON

   DEFINE FONT Font_1  FONTNAME "Times New Roman" SIZE 11
   DEFINE FONT Font_2  FONTNAME "Times New Roman" SIZE 10
   DEFINE FONT Font_3  FONTNAME "Times New Roman" SIZE 9 BOLD

   AAdd( aFont, GetFontHandle( "Font_1" ) )
   AAdd( aFont, GetFontHandle( "Font_2" ) )
   AAdd( aFont, GetFontHandle( "Font_3" ) )

   DEFINE WINDOW Form_0 ;
          At 0, 0 ;
          WIDTH 600 ;
          HEIGHT 400 ;
          TITLE 'Pesquisa letra a Letra (em teste)' ;      
        ICON 'lupa.ico' ;
          MAIN ;
          NOMAXIMIZE ;
          NOSIZE

      DEFINE LABEL Message
         ROW        7
         COL       10
         WIDTH     80
         HEIGHT    16
         VALUE  'Pesquisar por :'
         FONTBOLD .T.
      END LABEL

      DEFINE TEXTBOX Text_1
         ROW       5
         COL      90
         WIDTH   345
         HEIGHT   21
         ON CHANGE {|| RefreshBrowse()}
      END TEXTBOX

      ON KEY ESCAPE ACTION ThisWindow.Release

    END WINDOW

    DEFINE WINDOW Form_1 ;
         AT   0,0   ;
         WIDTH  600 ;
         HEIGHT  40 ;
         CHILD      ;
         NOSYSMENU  ;
         NOCAPTION

      DEFINE LABEL Label_1
         ROW     iif( IsVista().or.IsSeven(), 5, 10 )
         COL     10
         WIDTH  580
         HEIGHT  24
         VALUE   ''
         CENTERALIGN .T.
      END LABEL

    END WINDOW

   ScanSoft( cDbf )

   USE (cDbf) ALIAS 'B1' SHARED READONLY NEW

   CreateBrowse( "oBrw_1", 'Form_0', 30, 2, Form_0.Width-10, Form_0.Height-60, 'B1' )

      oBrw_1:aColumns[1]:cHeading := "Codigo"
      oBrw_1:SetColSize(1, 70)
      oBrw_1:aColumns[1]:nAlign   := DT_CENTER

      oBrw_1:aColumns[2]:cHeading := "Nome"
      oBrw_1:SetColSize(2, 350)
      oBrw_1:aColumns[2]:nAlign   := DT_LEFT

      oBrw_1:aColumns[3]:cHeading := "Data Nasc"
      oBrw_1:SetColSize(3, 140)      //oBrw_1:SetColSize(3, 120)
      oBrw_1:aColumns[3]:nAlign   := DT_RIGHT

   Form_0.Text_1.Setfocus

   CENTER WINDOW Form_0
   ACTIVATE WINDOW ALL

RETURN Nil

FUNCTION CreateBrowse( cBrw, cParent, nRow, nCol, nWidth, nHeight, cAlias )
   LOCAL i

   PUBLIC &cBrw

   DEFINE TBROWSE &cBrw ;
          AT nRow, nCol ;
          ALIAS cAlias ;
          OF &cParent ;
          WIDTH  nWidth ;
          HEIGHT nHeight ;      
        COLORS { CLR_BLACK, CLR_BLUE } ;
          FONT "MS Sans Serif" ;
          SIZE 8 ;
          SELECTOR .T.

      :SetAppendMode( .F. )
      :SetDeleteMode( .F. )

      :lNoHScroll := .T.
      :lCellBrw := .F.
      :nSelWidth := 16

   END TBROWSE

   LoadFields( cBrw, cParent )

   &cBrw:ChangeFont( aFont[ 1 ],   , 1 )
   &cBrw:ChangeFont( aFont[ 3 ], 1 , 1 )
   &cBrw:ChangeFont( aFont[ 3 ],   , 2 )

   &cBrw:nHeightCell += 6
   &cBrw:nHeightHead += 14
   &cBrw:nWheelLines := 1

   
   &cBrw:SetColor( { 16 },  {        RGB(  43, 149, 168 )})                             //  SyperHeader backcolor
   &cBrw:SetColor( {  3 },  {        RGB( 255, 255, 255 )})                             //  Header font color
   
   &cBrw:SetColor( {  4 },  { { || { RGB(  43, 149, 168 ), RGB(   0,  54,  94 )}}})     //  Header backcolor
   
   &cBrw:SetColor( { 17 },  {        RGB( 255, 255, 255 )})                             //  Font color in SyperHeader
   &cBrw:SetColor( {  6 },  { { || { RGB( 255, 255,  74 ), RGB( 240, 240,   0 )}}})     //  Cursor backcolor
   
   &cBrw:SetColor( { 12 },  { { || { RGB( 128, 128, 128 ), RGB( 250, 250, 250 )}}})     //  Inactive cursor backcolor
   
   &cBrw:SetColor( {  2 },  { { ||   RGB( 230, 240, 255 )}})                            //  Grid backcolor
   &cBrw:SetColor( {  1 },  { { ||   RGB(   0,   0,   0 )}})                            //  Text color in grid

   &cBrw:SetColor( {  5 },  { { ||   RGB(   0,   0, 255 )}})                            //  Text color of cursor in grid
   
   &cBrw:SetColor( { 11 },  { { ||   RGB(   0,   0,   0 )}})                            //  Text color of inactive cursor in grid
   
   
   &cBrw:nClrLine := COLOR_GRID

   &cBrw:ResetVScroll()

   // activating Multi Selection - NESTE TRECHO
   &cBrw:SetSelectMode( .T., { | oBrw, nI, lSel | ;
      MsgInfo( "Record " + Ltrim( Str( nI ) ) + ;
            If( lSel, " Selected", " Unselected" ) ) } )
   
   
   

RETURN Nil

********************************************************************
FUNCTION NADAAVER( cBrw, cParent, cAlias, cCodigo )

RETURN

STATIC FUNCTION RefreshBrowse()
LOCAL cSeek := Alltrim( Form_0.Text_1.Value )
LOCAL cExp := "'" + UPPER(cSeek) + "' $ UPPER(B1->NOM_CLI)"      // "'" + UPPER(cSeek) + "' $ UPPER(B1->F2)"
LOCAL nLen := 0

   IF !Empty(cSeek)
      B1->( DbSetFilter( &("{||" + cExp + "}"), cExp ) )
   ELSE
      B1->( DbClearFilter() )
   END

   B1->( DbEval({ || nLen++ }, { || !Deleted() }) )
   oBrw_1:bLogicLen := {|| nLen }

   oBrw_1:Reset()

RETURN Nil

STATIC FUNCTION ScanSoft(cDbf)
LOCAL oWmi, oItem
LOCAL cSW_Name, dSW_InstallDate, cSW_Version
LOCAL aStr := {}, cAlias

RETURN Nil

FUNCTION WMIService()
   Local oLocator
   Static oWmi

   IF oWmi == NIL
         oLocator := CreateObject( "wbemScripting.SwbemLocator" )
         oWmi     := oLocator:ConnectServer()
   ENDIF

RETURN oWmi
*********************************


// activating Multi Selection - NESTE TRECHO
   &cBrw:SetSelectMode( .T., { | oBrw, nI, lSel | ;
      MsgInfo( "Record " + Ltrim( Str( nI ) ) + ;
            If( lSel, " Selected", " Unselected" ) ) } )

Só consegui capturar o nro.,de registro mas não o codigo do cliente (ex: 000002)
Queria saber se alguem tem como me exolciar como fazer?
abradeço e se não for este o modo correto de perguntar eu peço desculpas
Nota de Moderação:
Jairo Maia: Mensagem editada para colocar a tag [ code ]
Veja como utilizar esta tag: Clique aqui
Avatar de usuário

marcosLP
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 35
Data de registro: 13 Nov 2020 10:24
Cidade/Estado: guarpauava/pr
Curtiu: 41 vezes
Mens.Curtidas: 4 vezes



Retornar para MiniGui

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 6 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro