Jump to content
Fivewin Brasil

evertonlb

Membros
  • Posts

    733
  • Joined

  • Last visited

  • Days Won

    18

Posts posted by evertonlb

  1. Olha.. aproveitando que o Valdir ta mexendo com comandos SQL, resolvi também aprender para, aos poucos, ir mudando meus comandos do DBase para SQL.

    Estou usando a SQLLib e montei uma inclusão de dados assim:

    Sql_Command := "Insert To Clientes"
    Sql_Command += "codigocliente, nomecliente, cidade, loja, telefonefixo, telefonecelular, Anotacoes"
    Sql_Command += "VALUES"
    Sql_Command += "cCodigoCliente, cNomeCliente, cCidade, cLoja, cTelefoneFixo, cTelefoneCelular, cAnotacao"
    BEGIN TRANSACTION
    SQl EXECUTE Sql_Command
    SQL COMMIT
    END TRANSACTION
    Não dá erro, mas também não inclui o registro.. Já verifiquei o manual e alguns tópicos no fórum, infelizmente não cheguei a uma conclusão de onde está o erro..
    Alguem poderia dar uma dica?
    Att.
    Everton
  2. 
    

    SET MESSAGE [ OF <oWnd> ];

    [ TO <cMsg> ];

    [ CENTERED | CENTER ] ;

    [ FONT <oFont> ] ;

    [ CLOCK | TIME ] ;

    [ DATE ] ;

    [ KEYBOARD ] ;

    [ COLOR | COLORS <nClrFore>;[,<nClrBack>] ] ;

    [ NOINSET | NO INSET]

    <oWnd> A reference to its container window

    <cPrompt> The default msg to show

    <oFont> An optional reference to a font object to use to display the msg.

    <nClrFore> Foreground color as a RGB number, or as a xBase string

    <nClrBack> Background color as a RGB number

    <oMsgItem> A reference of the MsgItem objet.

    <oMsgBar> A reference of its container MsgBar.

    <nSize> Size of the MsgItem.

    <uAction> The action to perform when the mouse is clicked over .

    <cBitmap1>, <cBitmap2> Bitmaps to show for active and inactive state of the Msgitems

    <cToolTip> Msgitem tooltip text

    CLAUSES

    CENTERED if the text should show centered

    CLOCK | TIME Time in the MsgBar.

    DATE Date in the MsgBar.

    KEYBOARD Keyboard status in the MsgBar.

    NOINSET For a non-inset MsgBar appearance

  3. Olha, eu não tenho experiência nisso, mesmo porque, apesar de ter comprado a Classe do Gilmer, nunca fiz a NFe funcionar de fato... mas pelo que tenho visto "por ai" creio que uma saída seria o Acbr. Acho que é interessante dar uma observada nisso!

    Att.

    Everton

  4. Valdir, estou usando a SQLLIB e o MySql.. Vou acabar trocando pelo MariaDB, mas só daqui uns dias quando terei mais tempo caso surja algum imprevisto.

    No início do main() do meu projeto tenho as seguintes instruções

    *--------------------------
    #include 'sqllib.ch'
    REQUEST SQLLIB
    REQUEST MySQL.
    *-----------------------------
    Minha conexão com o BD fica assim:
    SQL CONNECT ON 'localhost';
    PORT 3306;
    DATABASE 'MeuBD';
    USER 'root';
    PASSWORD 'MinhaSenha' ;
    OPTIONS SQL_NO_WARNING ;
    LIB 'MySQL'
    Em cada PRG seguinte eu tenho no cabeçalho isso:
    #include 'sqllib.ch'
    Eu uso o MyMake para compilar e no meu script de compilação inclui isso:
    CH..:
    SqlLib.CH
    LIB:
    LibMySql.LIB
    SqlLib_XHB_09971.LIB - Aqui é conforme a versão do xHb que vc tem. Nas pastas da SQLLIB tem para as versões compatíveis.
    DLL:
    LibMySql.DLL
    Espero que isso te ajude.
    Att.
    Everton
  5. Claro.. Deveria ter posto o código. Era meio tarde e eu cansado.

    
    
    oXBrwCB:nMarqueeStyle       := 5
    oXBrwCB:nColDividerStyle    := 1
    oXBrwCB:nRowDividerStyle    := 1
    oXBrwCB:lColDividerComplete := .T.
    oXBrwCB:nHeaderLines        := 1
    oXBrwCB:nDataLines          := 2
    oXBrwCB:lFooter             := .T.
    oXBrwCB:nRecSelColor        := 16773863
    oXBrwCB:SetArray( _vDetCobranca )
    *
                aCol_oXBrwCB[1] := oXBrwCB:aCols[1]
                   aCol_oXBrwCB[1]:bstrData      := {|| left( _vDetCobranca[oXBrwCB:nArrayAt,1], 60);
    					                                  + CHR(13) + CHR(10);
    					                                  + substr( _vDetCobranca[oXBrwCB:nArrayAt,1], 61, 60) } 
                   aCol_oXBrwCB[1]:nWidth        := 380
                   aCol_oXBrwCB[1]:cHeader       := "Histórico"
                   aCol_oXBrwCB[1]:lHIDE         := .F.
                   aCol_oXBrwCB[1]:oHeaderFont   := oFont1
                   aCol_oXBrwCB[1]:oDataFont     := oFont1
                   aCol_oXBrwCB[1]:oFooterFont   := oFont1
                   aCol_oXBrwCB[1]:bClrHeader    := {|| { 0, 14204813 } } 
                   aCol_oXBrwCB[1]:bClrFooter    := {|| { 0, 15790320 } } 
                   aCol_oXBrwCB[1]:bClrStd       := {|| { 0, 16777215 } } 
                   aCol_oXBrwCB[1]:bClrSel       := {|| { 0, 10806201 } } 
                   aCol_oXBrwCB[1]:bClrSelFocus  := {||{ 16777215, 255 } }
    
    

    Att.

    Everton

  6. Mais uma.. Essa sinceramente tentei e não consegui..

    Neste mesmo xBrowse que resolvi a bronca colocando o GoBottom() ( segundo a dica do Theotokos ), tenho uma variável que é carregada na array,

    esta variável tem 120 caracteres, mas o que esta acontecendo é que só mostra no xBrowse 80. Verifiquei como poderia aumentar este valor mas não

    achei nada. então neste caso faltam 40 caracteres no campo!

    Tem como aumentar esta quantidade mostrada???

    Achei muito estranho não aparecer tudo...

    Ah.. verifiquei e o campo esta gravando corretamente no arquivo, esta sendo carregado corretamente no vetor... aparentemente tudo certo!

    Att.

    Everton

  7. Boa tarde.

    Pessoal, sei que tem muitos tópicos falando nisso, mas em nenhum eu achei o que eu preciso.

    Vejam, tenho um xBrowse com array onde o usuário vai digitando os produtos. o que acontece é que o ponteiro

    sempre fica na primeira posição do Array... Assim, depois de alguns produtos digitados o usuário não consegue mais

    saber qual foi o ultimo... preciso que o ponteiro sempre fique na ultima posição da array.. como faço isso?

    Att.

    Everton

  8. código redundante?? whats is this?? kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk

    Na hora de gravar os dados no DBF Kapiaba.. tenho 2 Replaces absolutamente iguais... Quando bastava verificar a existência do registro e se não existisse colocar um append blank

    sem precisar repetir o processo!

    Ah... agora li de novo e entendi! hahahahaha

×
×
  • Create New...