Perguntas Restringir zeros a esquerda em campo

Mais
10 anos 3 meses atrás #24010 por edvaldo3p
Pessoal, Boa Tarde
No documento de entrada, o campo série por padrão e definido com tamanho de 3 caracteres, há possibilidade de restringir este campo para não aceitar zeros a esquerda?

Obrigado

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 3 meses atrás #24017 por AndersonBR
Cria uma validação para o campo, mas não travando e sim ajustando caso o cara coloque zeros a esquerda.

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 3 meses atrás #24023 por edvaldo3p
Bom dia Anderson.
Como posso estar criando essa validação?
Poderia me ajudar?

Obrigado

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 3 meses atrás #24033 por AndersonBR
Vamos lá!

Criei uma função que faz a verificação. então é só coloca-la na validação de usuário do F1_SERIE, fiz alguns testes rápidos e funcionou belezinha, mas de uma testada melhor antes de colocar em produção. Ah! O Alert se quiser pode tirar a TOTVs já da uma mensagem de problema na Serie, aí fica a seu critério!


Segue:
User Function COMV001SK()
	Local cABC := "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
	Local cABC2 := "abcdeeghijklmnopqrstuvwxyz"
	Local I := 0
	Local cSer := M->F1_SERIE
	Local lCont := .F.
	
	For I := 0 to Len(M->F1_SERIE)
		cSer := SubStr(M->F1_SERIE, I, 1)
		
		If (cSer $ cABC) .or. (cSer $ cABC2)
			cSer := Alltrim(M->F1_SERIE)
			lCont := .T.
			Exit
		EndIf
	Next
	
	If !lCont
		cSer := Str(Val(M->F1_SERIE))
		If AllTrim(cSer) <> Alltrim(M->F1_SERIE)
			Alert("Problema na serie. Verifique zero a esquerda!")
		Else
			lCont := .T.
		EndIf
	EndIf
Return lCont

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 3 meses atrás #24044 por edvaldo3p
Boa Tarde Anderson.
Meu caro, a solução foi perfeita, resolveu meu problema.
Muito obrigado pela ajuda!!!!
So uma dúvida, por qual motivo vc criou estas linhas no codigo?
Local cABC := "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
Local cABC2 := "abcdeeghijklmnopqrstuvwxyz"

Obrigado

Por favor Acessar ou Registrar para participar da conversa.

Mais
10 anos 3 meses atrás #24045 por AndersonBR
Boa Tarde Edvaldo, que bom cara fico feliz que deu certo.

Com relação as letras é só para checar se a série não marcada em letras tipo série D ou série E, por garantia joguei o alfabeto todo rsrsrs. Se não daria erro na conversão do campo para valor, para então checar se tem zero a esquerda, se der um val e a serie fosse E por exemplo ele me retornaria 0.

Só por isso, evitar de dar problema com essas séries.

Precisando estamos as ordens, abraço!

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.120 segundos
Joomla templates by a4joomla