HOLA A TODOS!
Tengo un campo MEMO para la glosa de una factura, donde el larga máximo es de 500, por la dimensión física de la factura, el problema es que al ingresar información en el MEMO este acepta más de los 500 caracteres. Entonces como puedo limitar el largo máximo ? he buscado la forma sin éxito.
Gracias de antemano por sus respuestas.
LARGO MAXIMO CAMPO MEMO
Re: LARGO MAXIMO CAMPO MEMO
lafug wrote:HOLA A TODOS!
Tengo un campo MEMO para la glosa de una factura, donde el larga máximo es de 500, por la dimensión física de la factura, el problema es que al ingresar información en el MEMO este acepta más de los 500 caracteres. Entonces como puedo limitar el largo máximo ? he buscado la forma sin éxito.
Gracias de antemano por sus respuestas.
Luis Alfonso
Más o menos creo que lo podrías hacer asi ( ojo, que no lo he probado )
Code: Select all | Expand
oMemo:bChange := { | o | if( Len( o:GetText() ) > 500, MsgInfo("longitud maxima excedida","Atencion"), )
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Re: LARGO MAXIMO CAMPO MEMO
Editalo en un MGET con el que puedes limitar el número de caracteres.
Peaaaaaso de foro...
FWH 2007 - xHarbour - BCC55
FWH 2007 - xHarbour - BCC55
- karinha
- Posts: 7915
- Joined: Tue Dec 20, 2005 7:36 pm
- Location: São Paulo - Brasil
- Been thanked: 3 times
- Contact:
Re: LARGO MAXIMO CAMPO MEMO
Code: Select all | Expand
REDEFINE GET oGet[17] VAR wTEXTO MULTILINE ID 217 OF oDlg ;
COLOR CLR_BLUE, CLR_WHITE UPDATE FONT oFont ;
WHEN( lLigaCombo ) ;
ON CHANGE( SB_LimitText( oGet[17], oSay, oTransmite )
FUNCTION SB_LimitText( oGet, oSay, oTransmite )
///////////////////////////////////////////////////////////////////////////
// Autor..........: Peguei no Forum FiveWin Brasil //
// Modificaçoes...: Ale SB - Soft Camus //
// Descricao......: Restringe o Tamanho de um Texto. //
// Parametros ==> //
// - oGet : oBjeto Get. //
// - nSize : Tamanho que deve ter o Texto. //
// Dependencias ==> //
// Retorno ==> nil //
///////////////////////////////////////////////////////////////////////////
LOCAL nTam, nSize
DEFAULT nSize := 999 // maximo e 1000 caracteres
nTam := LEN( ALLTRIM( oGet:cText ) )
IF nTam > nSize
MsgInfo( "A Mensagem da Carta já Alcançou o Tamanho Limite de " + ;
"1000 Caracteres Permitidos Pela Sefaz!", ;
"..:: Atenção ::.." )
oGet:cText := Substr(oGet:cText, 1, nTam-1)
RETURN( .F. )
ENDIF
// Mostra a qtde de caracteres digitados na carta de correcao
oSay:VarPut( Strzero( nTam, 3, 0 ) )
oSay:Refresh()
IF nTam <= 14 // caracteres
lLigaBotao := .F.
// Botao da Transmissao
oTransmite:Disable()
oTransmite:Refresh()
ELSE
lLigaBotao := .T.
// Botao da Transmissao
oTransmite:Enable()
oTransmite:Refresh()
ENDIF
RETURN( .T. )
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341