Jump to content
Fivewin Brasil

LIMITAÇÃO TAMANHO VARIAVEL


VASCON

Recommended Posts

PESSOAL,

Todas as respostas tendem a considerar que o problema estaria na máscara e no tamanho do SIZE para permitir a vizualização.

Antes de todas essas respostas já tinha feito os mais diversos testes. Garanto que nada tem a ver com tipo de máscara ou tamanho do SIZE para permitir vizualização.

Não sei o que é. Quando, e se descobrir, informo.

Grato pela atenção

NILSON

Link to comment
Share on other sites

A questão não deve estar ai pois aposto que todos nós já fizemos isso TROCENTAS vezes e sabemos como fazer isso muito bem... você deve estar modificando o valor em algum lugar, poste aqui todas as linhas que você modifica o valor desse get...

MSN: samirabreu@hotmail.com

Skype: SamirAbreu

xHarbour 1.1.0 + FwXh 8.02

Link to comment
Share on other sites

personal / sambomb

Pra tirar qualquer dúvida lá vai o PRG inteiro

Vejam que no get de pesquisa (STATIC FUNCTION PEAUT()), com outro nome de variavel, acontece a mesma coisa.

Atenção para os detalhes:

Testei num NOTEBOOK e um computador normal. (ambos XP)

no NOTE -> o espaço liberado é maior

no computador normal -> espaço liberado é menor

no NOTE -> da DEL veio com o WINDOWS ORIGINAL

no computador normal -> WINDOWS PIRATEADO

Abs, grato

NILSON

#include "fivewin.ch"

#include "report.ch"

#include "ord.ch"

#Define CLR_LGRAY nRGB( 230, 230, 230 )

#Define CLR_LGREEN nRGB( 190, 215, 190 )

#Define CLR_CHOCOLATE nRGB( 040, 005, 080 )

#Define CLR_VERDEAGUA nRGB( 000, 128, 128 )

#Define CLR_CREME nRGB( 255, 255, 235 ) // Cream color

#Define CLR_AZULADITO nRGB( 255, 016, 008, 255, 016, 008, 255, 016 )

#Define CLR_BLANCO nRGB( 255, 255, 235 ) // ideal como fondo para escritura de texto

#Define CLR_HYEL nRGB( 240, 226, 159 )

#Define CLR_LYEL nRGB( 243, 243, 156 )

#Define CLR_AZUL_BRANCO nRGB( 040, 004, 090 )

#Define CLR_PRETO_AMARE nRgb(255,255,200)

** FUNÇÃO PARA MANUTENÇÃO DE CODIGOS FISCAIS ****************

Function MANFIS()

LOCAL oSaida, oIncluir, oExcluir, oCancelar, oImprimir, oEditar, oPesquisa

LOCAL nOrden:=1

LOCAL cOrden := { OemToAnsi("Codigo"),;

OemToAnsi("Nome")}

IF ACESSO=.F.

SENHA()

ENDIF

CLOSE DATABASES

SET DELETED ON

SET DATE BRITISH

IF NETUSE("CODFIS","COFIS1",.F.,10)

SET INDEX TO COFIS1,COFIS2

ELSE

MsgAlert("Arquivo não Disponivel - Aguarde !")

ENDIF

SELECT COFIS1

SET ORDER TO 1

DEFINE FONT oFont_cli NAME "MS SANS SERIF" SIZE 0,-15

DEFINE DIALOG oDlgPFIS from 09,3 to 36,99;

TITLE 'Manutenção de Codigos Fiscais';

COLOR CLR_BLACK, CLR_HGRAY

oDlgPFIS:LHELPICON := .F.

@0.001,0.3 to 13.0,53.7

@0.7,0.7 LISTBOX oBrw;

FIELDS COFUN,;

NOFUN + " " + NOFUN01;

HEADERS "CFOP",;

"DESCRIÇÃO";

COLOR CLR_BLACK,Rgb(255,255,235);

FIELDSIZES 60,850;

FONT oFont_cli;

OF oDlgPFIS;

SIZE 365,170

oBrw:ajustify:={.f.,.f.}

oBrw:bKeyDown := { | nKey | Ctrl_Teclas( nKey),;

IF ( nKey = VK_INSERT,( INTFIS(),oBrw:UpStable(),oBrw:SetFocus(),oBrw:Refresh() ), ;

IF ( nKey = VK_RETURN,( EDFIS(),oBrw:UpStable(),oBrw:SetFocus(),oBrw:Refresh() ), ;

IF ( nKey = VK_DELETE,( DEFIS(),oBrw:UpStable(),oBrw:SetFocus(),oBrw:Refresh() ), ;

IF ( nKey = VK_HOME,( dbgotop(),oBrw:UpStable(),oBrw:Refresh(),oBrw:SetFocus() ), ;

IF ( nKey = VK_END,( dbgobottom(),oBrw:UpStable(),oBrw:Refresh(),oBrw:SetFocus() ), ;

IF ( nKey = VK_ESCAPE,oDlgPFIS:End() , ) ) ) ) ) ) }

oBrw:UpStable()

oBrw:Refresh()

oBrw:SetFocus()

////COLOR CLR_BLACK, CLR_HGRAY;

//**************************************************************************************************************************

oBrw:nClrBackHead := CLR_HBLUE // Cor do Fundo do Cabe‡alho

oBrw:nClrBackFocus := CLR_AZUL_BRANCO // Cor do Cursor Em Cima do Ötem

oBrw:nClrForeHead := CLR_BLANCO // Cor nos Headers - Cabe‡alhos

//oBrw:nClrPane := { || IIF( ( oBrw:cAlias)->( OrdKeyNo()) %2 == 1 , CLR_LGREEN,CLR_LGRAY)}

//**************************************************************************************************************************

@16.0,00.7 BUTTON oIncluir PROMPT "&Incluir" OF oDlgPFIS SIZE 33,08 ACTION (INTFIS(),oBrw:UpStable(),oBrw:Refresh(),oBrw:SetFocus() )

@16.0,05.7 BUTTON oDados PROMPT "&Alterar" OF oDlgPFIS SIZE 33,08 ACTION (EDFIS(),oBrw:UpStable(),oBrw:Refresh(),oBrw:SetFocus() )

@16.0,10.7 BUTTON oExcluir PROMPT "E&xcluir" OF oDlgPFIS SIZE 33,08 ACTION (DEFIS(),oBrw:UpStable(),oBrw:Refresh(),oBrw:SetFocus() )

@16.0,15.7 BUTTON oInicio PROMPT "&Inicio" OF oDlgPFIS SIZE 33,08 ACTION (dbgotop(),oBrw:UpStable(),oBrw:Refresh(),oBrw:SetFocus() )

@16.0,20.7 BUTTON oFim PROMPT "&Fim" OF oDlgPFIS SIZE 33,08 ACTION (dbgobottom(),oBrw:UpStable(),oBrw:Refresh(),oBrw:SetFocus() )

@16.0,25.7 BUTTON oPesquisa PROMPT "&Pesquisa" OF oDlgPFIS SIZE 33,08 ACTION PEAUT()

@16.0,30.7 BUTTON oSaida PROMPT "&Sair" OF oDlgPFIS SIZE 33,08 ACTION (oDlgPFIS:End()) CANCEL

@13.95,41.5 SAY "Ordenar" SIZE 35,10

@13.95,41.5 COMBOBOX nOrden ITEMS cOrden SIZE 40, 70 OF oDlgPFIS ON CHANGE Orden(nOrden,oBrw)

ACTIVATE DIALOG oDlgPFIS CENTERED

RETURN(NIL)

*-------------------------------- Pesquisa de Codigo Fiscal -----------------------------------------------------

STATIC FUNCTION PEAUT()

SET SOFTSEEK ON

*IF MsgGet( "Buscar por", "Nome do Cliente",@mNOM ,"lupa.bmp" )

* SEEK UPPER(mNOM)

* oBrw:UpStable()

* oBrw:Refresh()

*ENDIF

M->oNOM:=mNOM:=SPACE(60)

DEFINE DIALOG oDlgPI from 4,05 to 08,80;

TITLE 'Pesquisa de Codigos Fiscais'

oDlgPI:LHELPICON := .F.

@00.5,01 SAY "Nome:"

@00.5,05 GET oNOM VAR mNOM OF oDlgPI PICT '@R' SIZE 245,12

@01.7,29.3 BUTTON oSaida PROMPT "&OK " OF oDlgPI SIZE 35,08 ACTION (PESCA(),oDlgPI:End(),oBrw:UpStable(),oBrw:Refresh(),oBrw:SetFocus() ) CANCEL

ACTIVATE DIALOG oDlgPI CENTERED

RETURN(NIL)

*----------------------------------------------------------------------------------------------------------------

STATIC FUNCTION PESCA()

SET ORDER TO 2

GOTO TOP

M->mNOM=RTRIM( Upper( mNOM ) )

SEEK mNOM

oBrw:UpStable()

oBrw:Refresh()

oBrw:SetFocus()

RETURN(.T.)

**------------------ Função que retorna a ordem --------------------------------------------------

STATIC FUNCTION Orden(nOrden,oBrw)

IF nOrden=1

SET ORDER TO 1

ELSE

SET ORDER TO 2

ENDIF

oBrw:GOTOP()

oBrw:UpStable()

oBrw:Refresh()

oBrw:SetFocus()

RETURN NIL

**------------ Inclusao de Registros -------------------------------------------------------------

STATIC Function INTFIS()

LOCAL TAP := { "0 - TRANSFERENCIA DE MERCADORIAS","1 - COMPRAS PARA COMERCIALIZACAO","2 - VENDAS DE MERCADORIAS"}

SET ORDER TO 1

M->oCOFUN:=mCOFUN:=SPACE(5)

M->oNOFUN:=mNOFUN:=SPACE(60)

M->oNOFUN01:=mNOFUN01:=SPACE(60)

M->oTAP:=mTAP:=SPACE(1)

AB=1

DEFINE DIALOG oDlgPLA from 15,12 to 23,102;

TITLE 'Inclusao de Codigos Fiscais';

COLOR CLR_BLACK, CLR_HGRAY

oDlgPLA:LHELPICON := .F.

@00,0.7 TO 03.0,50.3

@01,01 SAY "CODIGO:"

@01,05 GET oCOFUN VAR mCOFUN OF oDlgPLA SIZE 25,12 PICT "9.999" VALID VERCOF(mCOFUN)

@01,09 SAY "LINHA 1:"

@01,13 GET oNOFUN VAR mNOFUN OF oDlgPLA SIZE 245,12 PICT '@R'

@02,09 SAY "LINHA 2:"

@02,13 GET oNOFUN01 VAR mNOFUN01 OF oDlgPLA SIZE 245,12 PICT "@R"

@03.50,01 SAY "TIPO DE OPERACAO:"

@03.18,10 COMBOBOX mTAP ITEMS TAP OF oDlgPLA SIZE 140,40 VALID VEROP(mTAP)

@04.0,40.5 BUTTON "&Gravar" OF oDlgPLA SIZE 33,08 ACTION {||GRAVPLA(),oBrw:UpStable(),oBrw:refresh(),oBrw:SetFocus(),oDlgPLA:end()}

@04.0,45.5 BUTTON "&Sair" OF oDlgPLA SIZE 33,08 ACTION oDlgPLA:end() CANCEL

ACTIVATE DIALOG oDlgPLA CENTERED

RETURN .T.

**------------ Edicao de Registros ---------------------------------------------------------------

STATIC Function EDFIS()

LOCAL TAP := { "0 - TRANSFERENCIA DE MERCADORIAS","1 - COMPRAS PARA COMERCIALIZACAO","2 - VENDAS DE MERCADORIAS"}

SET ORDER TO 1

M->oCOFUN:=mCOFUN:=COFIS1->COFUN

M->oNOFUN:=mNOFUN:=COFIS1->NOFUN

M->oNOFUN01:=mNOFUN01:=COFIS1->NOFUN01

M->oTAP:=mTAP:=COFIS1->VENDA

AB=0

DEFINE DIALOG oDlgPLA from 15,12 to 23,102;

TITLE 'Alteracao de Codigos Fiscais';

COLOR CLR_BLACK, CLR_HGRAY

oDlgPLA:LHELPICON := .F.

@00,0.7 TO 03.0,50.3

@01,01 SAY "CODIGO:"

@01,05 SAY oCOFUN VAR mCOFUN OF oDlgPLA SIZE 25,12

@01,09 SAY "LINHA 1:"

@01,13 GET oNOFUN VAR mNOFUN OF oDlgPLA SIZE 245,12 PICT "@R"

@02,09 SAY "LINHA 2:"

@02,13 GET oNOFUN01 VAR mNOFUN01 OF oDlgPLA SIZE 245,12 PICT "@R"

@03.50,01 SAY "TIPO DE OPERACAO:"

@03.18,10 COMBOBOX mTAP ITEMS TAP OF oDlgPLA SIZE 140,40 VALID VEROP(mTAP)

@04.0,40.5 BUTTON "&Gravar" OF oDlgPLA SIZE 33,08 ACTION {||GRAVPLA(),oBrw:UpStable(),oBrw:refresh(),oBrw:SetFocus(),oDlgPLA:end()}

@04.0,45.5 BUTTON "&Sair" OF oDlgPLA SIZE 33,08 ACTION oDlgPLA:end() CANCEL

ACTIVATE DIALOG oDlgPLA CENTERED

RETURN .T.

**------------ Pesquisa de Codigos Fiscais -------------------------------------------------------

STATIC Function VERCOF()

SET ORDER TO 1

GOTO TOP

SEEK mCOFUN

IF COFUN=mCOFUN

TONE(300,3)

MsgInfo("Codigo ja Cadastrado! ","Atencao")

oDlgPLA:end()

oBrw:UpStable()

oBrw:Refresh()

oBrw:SetFocus()

ENDIF

RETURN .T.

**------------ Validação Tipo de Operação --------------------------------------------------------

STATIC FUNCTION VEROP(mTAP)

IF EMPTY(mTAP)

TONE(300,3)

MsgInfo("Campo vazio - preenchimento obrigatorio! ","Atencao")

RETURN .F.

ELSE

RETURN .T.

ENDIF

**------------ Gravacao de Registros -------------------------------------------------------------

STATIC Function GRAVPLA()

IF AB=1

APPEND BLANK

ENDIF

DBSETORDER(0)

IF RECLOCK(4)

REPLACE COFUN WITH mCOFUN,NOFUN WITH mNOFUN,NOFUN01 WITH mNOFUN01,VENDA WITH mTAP

DBSETORDER(1)

COMMIT

UNLOCK

ENDIF

oDlgPLA:UpDate()

oDlgPLA:SetFocus()

RETURN .T.

**------------ Exclusao de Registros -------------------------------------------------------------

STATIC Function DEFIS()

M->mCOFUN:=COFUN

IF MsgYesNo("Voce realmente deseja Excluir este Codigo !","Favor, confirme")

IF COFUN = mCOFUN

DBSETORDER(0)

IF RECLOCK(4)

DELETE

DBSETORDER(1)

UNLOCK

ENDIF

IF EOF()

SKIP(-1)

ENDIF

oBrw:UpStable()

oBrw:Refresh()

oBrw:SetFocus()

RETURN NIL

ENDIF

ELSE

RETURN NIL

ENDIF

Link to comment
Share on other sites

*----------------------------------------------------------------------------------------------------------------

STATIC FUNCTION PESCA()

SET ORDER TO 2

GOTO TOP

M->mNOM=RTRIM( Upper( mNOM ) )id=red>

SEEK mNOM

oBrw:UpStable()

oBrw:Refresh()

oBrw:SetFocus()

RETURN(.T.)

E onde você faz as declarações das variáveis? Porque você coloca M->oVar e não simplemente oVar

MSN: samirabreu@hotmail.com

Skype: SamirAbreu

xHarbour 1.1.0 + FwXh 8.02

Link to comment
Share on other sites

sambomb

Veja abaixo o porque o M->

Toda variavel que voce declarar com este sinal o compilador sempre a tratara como variavel de memoria dispensando o uso de declaracoes como memvar ou local.

Sempre que voce for usar esta variavel dentro de seu procedimento ou funcao sempre utilize o ( M-> ) na frente da mesma, pois assim sempre o compilador sabera que se trata de varivel de memoria.

Mas qual a vantagem disso, sempre que voce quiser apaga-las dê um release all que as mesmas são apagadas imediatamente ou na saida do procedimento onde ocorreu o primeiro uso da mesma ela será sempre apagada.

Mas elas possuem uma grande vantagem sobre as locais, pois a mesma são enxergadas em qualquer procedimento ou funcao chamadas apartir do procedimento ou funcao onde ocorreu o primeiro uso da mesma.

Pode se dizer que são quase a mesma coisa que variaveis Private, mas consomem menos memoria que as Private.

NILSON

Link to comment
Share on other sites

E você não deveria fazer isso com a variável de objeto E as de caracter?

Ex:

Redefine Get M->oVar Var M->cVar ID 100 Of oDlg Etc....

MSN: samirabreu@hotmail.com

Skype: SamirAbreu

xHarbour 1.1.0 + FwXh 8.02

Obs.: quando for colocar códigos coloque a tag [-code] [-/code](sem o "-") para não perder a endentação e facilitar a visualização do código icon_smile_wink.gif

Editado por - sambomb on 28/01/2009 11:11:53

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...