Login

Esqueci minha senha

Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
16 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 15 Visitantes :: 2 Motores de busca

marcaobona

[ Ver toda a lista ]


O recorde de usuários online foi de 337 em 27/12/2010, 08:00
Brasília
Estamos no Twitter
Nossa Comunidade
Nosso Grupo
Últimos assuntos
» Registrar OCX Windows Seven
Ontem à(s) 16:44 por megasoft

» Criar Variáveis em sequencia
Ontem à(s) 16:37 por megasoft

» No final a Impressora não Ejecta cem corta o papel
Ontem à(s) 16:30 por megasoft

» Ajuda com Imagens no MySQL
Ontem à(s) 16:20 por megasoft

» Instalando MySQL no linux
Ontem à(s) 13:56 por hugo

» Como Criar arquivos de Log`s para certos usuarios
Ontem à(s) 13:55 por hugo

» MySQL X VFP @MEMO
Ontem à(s) 13:53 por hugo

» Dirf
6/2/2012, 06:54 por alceu11

» EXE Instalador Não Executa
5/2/2012, 16:57 por Sub-Zero

» SQL Server Setup
5/2/2012, 13:06 por Sub-Zero

» localizar registro no postgreslq (alterar/incluir)
4/2/2012, 19:21 por mauro victoria

» Saber se existe uma tabela??
4/2/2012, 10:12 por Sub-Zero

» Empacotar arquivos em um único executável
3/2/2012, 14:48 por halisson

» VAGAS ANALISTA DE SISTEMAS - VISUAL FOX
3/2/2012, 08:53 por Nelson Arcas

» Escrever a DATA por extenso
1/2/2012, 23:55 por alceu11

» ActionScript - Introdução
31/1/2012, 19:25 por Fonsecca

» Selecionar campo com mais de 9 caracteres
31/1/2012, 15:45 por marcio

» CEP do BRASIL e dos UFs do brasil com codigo do IBGE para nf - <<<
31/1/2012, 09:20 por alceu11

» Tutorial HTML
30/1/2012, 15:19 por Fonsecca

» PHP + CSS
30/1/2012, 15:09 por Fonsecca

Registrar OCX Windows Seven

29/7/2011, 11:48 por Julio

Bom Dia Pessoal do Forum

Alguem ja teve que registrar alguma OCX no windows seven?
Tentei …

Comentários: 15

Criar Variáveis em sequencia

18/1/2012, 08:19 por BrunoMesquita

Olá pessoal como faço para gerar variáveis em sequencia, tipo: Se tenho 6 registros cria-se 6 …

Comentários: 6

No final a Impressora não Ejecta cem corta o papel

19/1/2012, 06:46 por clima238

bom dia
o seguinte código imprime correctamente, só no fim não ejecta nem corta o papel,
alguem …

Comentários: 1

Ajuda com Imagens no MySQL

25/1/2012, 08:53 por megasoft

Olá vou resumir aqui como estou fazendo.
Código:
xFoto_Prod = …


Comentários: 5

Dirf

4/2/2012, 19:25 por mauro victoria

Boa noite estou com dificuldade de entender o layout da dirf , alguem tem um arquivo txt para que …

Comentários: 1

Estatísticas
Temos 3637 usuários registrados
O último usuário registrado atende pelo nome de reginaldolimas

Os nossos membros postaram um total de 13978 mensagens em 1958 assuntos

Recibo

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Em curso Recibo

Mensagem por ClodoaldoOliveira em 26/2/2010, 11:44

Boa tarde Amigos(as)

Por favor alguem teria a rotina pra fazer a emissao de recibo que escreve por extenso o valor.

Fico no aguardo

Atenciosamente

Clodoaldo Cardoso de Oliveira
VFP 5.0

ClodoaldoOliveira
Começando a Participar
Começando a Participar


Voltar ao Topo Ir em baixo

Em curso Re: Recibo

Mensagem por Nelson Arcas em 26/2/2010, 21:04

Clodoaldo
Veja esse tópico que postei tem uma funça para escrever o valor por extenso.

[Você precisa estar registrado e conectado para ver este link.]

Nelson Arcas
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Em curso Ta pronto o recibo

Mensagem por alceu11 em 27/2/2010, 08:49

Segue o codigo de como fazer o recibo por extenso, usando a funcao do Nelson Arcas, so acho que da para melhorar.

So quero receber a grana do recibo Very Happy

Código:

Set Safety Off
=valor_extenso(2452.34)
 
 wre=valor_extenso(2452.34)


Create Cursor Tabla1 (Txt C(78))


Insert Into Tabla1 Values ("RECIBO ")
Insert Into Tabla1 Values ("======== ")


Insert Into Tabla1 Values ("Valor R$  2,452.34")


Insert Into Tabla1 Values (wre)
 
Insert Into Tabla1 Values ("EU CLODOALDO fiz este Report sem abrir o FOX PRO, e mereco receber, esta grana ")

Insert Into Tabla1 Values ("Sao Paulo, 31/2/2010 ")
Insert Into Tabla1 Values ("    ")
Insert Into Tabla1 Values ("======== ")





Create Report Reporte1 From Tabla1


Report Form Reporte1 Preview Nowait

 

FUNCTION valor_extenso

lPARAMETERS pvalor
local vextenso, flagbilhao, flagmilhao,flagcentavos
DIMENSION unidade[10], dez[10], dezena[10], centena[11]

STORE .F. TO flagbilhao,flagmilhao,flagcentavos

unidade[1] = ""
unidade[2] = "Um "
unidade[3] = "Dois "
unidade[4] = "Três "
unidade[5] = "Quatro "
unidade[6] = "Cinco "
unidade[7] = "Seis "
unidade[8] = "Sete "
unidade[9] = "Oito "
unidade[10] = "Nove "

dez[1]  = "Dez "
dez[2]  = "Onze "
dez[3]  = "Doze "
dez[4]  = "Treze "
dez[5]  = "Quatorze "
dez[6]  = "Quinze "
dez[7]  = "Dezesseis "
dez[8]  = "Dezessete "
dez[9]  = "Dezoito "
dez[10] = "Dezenove "

dezena[1] = ""
dezena[2] = "Dez "
dezena[3] = "Vinte "
dezena[4] = "Trinta "
dezena[5] = "Quarenta "
dezena[6] = "Cinqüenta "
dezena[7] = "Sessenta "
dezena[8] = "Setenta "
dezena[9] = "Oitenta "
dezena[10] = "Noventa "

centena[1] = ""
centena[2] = "Cento "
centena[3] = "Duzentos "
centena[4] = "Trezentos "
centena[5] = "Quatrocentos "
centena[6] = "Quinhentos "
centena[7] = "Seiscentos "
centena[8] = "Setecentos "
centena[9] = "Oitocentos "
centena[10] = "Novecentos "
centena[11] = "Cem "

valorstr = STR(INT(pvalor * 100),14,0)
vextenso = " "
FOR i=1 TO 14
  IF SUBSTR(valorstr,i,1) != " "
      num = VAL(SUBSTR(valorstr,i,1))
      DO CASE
        * --- Bilhao
      CASE i = 1
        IF num = 1 .AND. VAL(SUBSTR(valorstr,i+1,2)) = 0
            vextenso = centena[11]
        ELSE
            vextenso = centena[Num+1] + IIF(SUBSTR(valorstr,i+1,2) = "00" OR num=0, "", "e ")
        ENDIF
        flagbilhao = .T.
      CASE i = 2
        IF num != 1
            vextenso = vextenso + dezena[Num+1] + IIF(SUBSTR(valorstr,i+1,1) = "0" .OR. num=0, "", "e ")
            flagbilhao = .T.
        ELSE
            i=i+1
            num = VAL(SUBSTR(valorstr,i,1))
            vextenso = vextenso + dez[Num+1] + "Bilhões" + IIF(VAL(SUBSTR(valorstr,4))>0,", "," ")
        ENDIF
      CASE i = 3
        IF !(flagbilhao)
            flagbilhao = IIF(num>1,.T.,.F.)
        ENDIF
        vextenso = vextenso + unidade[Num+1] + IIF(flagbilhao,"Bilhões","Bilhão") + IIF(VAL(SUBSTR(valorstr,4))>0,", "," ")

        *---- Milhao
      CASE i = 4
        IF num = 1 .AND. VAL(SUBSTR(valorstr,i+1,2)) = 0
            vextenso = vextenso + centena[11]
        ELSE
            vextenso = vextenso + centena[Num+1] + IIF(SUBSTR(valorstr,i+1,2) = "00" OR num=0, "", "e ")
        ENDIF
        flagmilhao = .T.
      CASE i = 5
        IF num != 1
            vextenso = vextenso + dezena[Num+1] + IIF(SUBSTR(valorstr,i+1,1) = "0" .OR. num=0, "", "e ")
            flagmilhao = .T.
        ELSE
            i=i+1
            num = VAL(SUBSTR(valorstr,i,1))
            vextenso = vextenso + dez[Num+1] + "Milhões" + IIF(VAL(SUBSTR(valorstr,7))>0,", "," ")
        ENDIF
      CASE i = 6
        IF !(flagmilhao)
            flagmilhao = IIF(num>1,.T.,.F.)
        ENDIF
        vextenso = vextenso + unidade[Num+1] + IIF(flagmilhao,"Milhões","Milhão") + IIF(VAL(SUBSTR(valorstr,7))>0,", "," ")

        *--- MILHAR
      CASE i = 7
        IF num = 1 .AND. VAL(SUBSTR(valorstr,i+1,2)) = 0
            vextenso = vextenso +  centena[11]
        ELSE
            vextenso = vextenso +  centena[Num+1] + IIF(SUBSTR(valorstr,i+1,2) = "00" OR num=0, "", "e ")
        ENDIF
      CASE i = 8
        IF num != 1
            vextenso = vextenso + dezena[Num+1] + IIF(SUBSTR(valorstr,i+1,1) = "0" .OR. num=0, "", "e ")
        ELSE
            i=i+1
            num = VAL(SUBSTR(valorstr,i,1))
            vextenso = vextenso + dez[Num+1] + "Mil" + IIF(VAL(SUBSTR(valorstr,10))>0,", "," ")
        ENDIF
      CASE i = 9
        vextenso = vextenso + unidade[Num+1] + "Mil" + IIF(VAL(SUBSTR(valorstr,10))>0,", "," ")

        *--- Reais
      CASE i = 10
        IF num = 1 .AND. VAL(SUBSTR(valorstr,i+1,2)) = 0
            vextenso = vextenso +  centena[11]
        ELSE
            vextenso = vextenso +  centena[Num+1] + IIF(SUBSTR(valorstr,i+1,2) = "00" OR num=0, "", "e ")
        ENDIF
      CASE i = 11
        IF num != 1
            vextenso = vextenso + dezena[Num+1] + IIF(SUBSTR(valorstr,i+1,1) = "0" .OR. num=0, "", "e ")
        ELSE
            i=i+1
            num = VAL(SUBSTR(valorstr,i,1))
            vextenso = vextenso + dez[Num+1] + "Reais" + IIF(VAL(SUBSTR(valorstr,13))>0," e "," ")
        ENDIF
      CASE i = 12
        vextenso=vextenso+unidade[Num+1]+ IIF(EMPTY(vextenso) AND num=1,"Real","Reais") +IIF(VAL(SUBSTR(valorstr,13))>0," e "," ")

        *---- CENTAVOS
      CASE i = 13
        IF num != 1
            vextenso = vextenso + dezena[Num+1]
            flagcentavos = IIF(num>1,.T.,.F.)
        ELSE
            i=i+1
            num = VAL(SUBSTR(valorstr,i,1))
            vextenso = vextenso + dez[Num+1] + "Centavos"
            flagcentavos = .T.
        ENDIF
      CASE i = 14
        IF !(flagcentavos)
            flagcentavos = IIF(num>1,.T.,.F.)
        ENDIF
        IF flagcentavos
            vextenso = vextenso + unidade[Num+1] + IIF(flagcentavos,"Centavos","")
        ELSE
            IF num>0
              vextenso = vextenso + unidade[Num+1] + "Centavo"
            ENDIF
        ENDIF
      ENDCASE
  ENDIF
ENDFOR

WAIT WINDOW 'vc digitou 2452.34 '+ALLTRIM(vextenso) TIMEOUT 0.2
 
RETURN ALLTRIM(vextenso)
***********************************


Clodoaldo vc tem msn?

alceu11
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Em curso Re: Recibo

Mensagem por hugo em 27/2/2010, 10:00

boa em nelson e alceu

parabens parceiros!

_________________
"A tristeza é a falta de alegria, mais sem ela eu não poderia entender a alegria do fato de que a felicidade existe!"
Helio Leites - [Você precisa estar registrado e conectado para ver este link.]

hugo
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Em curso Re: Recibo

Mensagem por marcio em 1/3/2010, 11:52

Mais uma function aí....

Código:
function EXTENSO

LPARAMETERS numero
LOCAL LINHA1,LINHA2,vlc_item,vtexto,vtextoi

n01='UM '
n02='DOIS '
n03='TRES '
n04='QUATRO '
n05='CINCO '
n06='SEIS '
n07='SETE '
n08='OITO '
n09='NOVE '
n00=' '

n10='DEZ '
n11='ONZE '
n12='DOZE '
n13='TREZE '
n14='QUATORZE '
n15='QUINZE '
n16='DEZESSEIS '
n17='DEZESSETE '
n18='DEZOITO'
n19='DEZENOVE '
n20='VINTE '

n30='TRINTA '
n40='QUARENTA '
n50='CINQUENTA '
n60='SESSENTA '
n70='SETENTA '
n80='OITENTA '
n90='NOVENTA '
n000=' '

n100='CENTO '
n200='DUZENTOS '
n300='TREZENTOS '
n400='QUATROCENTOS '
n500='QUINHENTOS '
n600='SEISCENTOS '
n700='SETECENTOS '
n800='OITOCENTOS '
n900='NOVECENTOS '

mil='MIL '
milhao='MILHAO '
milhoes='MILHOES'
moeda='REAIS '
moeda1='REAL '
centavo='CENTAVO '
centavos='CENTAVOS '

      if numero = 0
        return
      endif
      numero1=str(numero,13,2)
      cents=str((numero - int(numero)) * 100,2)
      numero=int(numero)
      contador=1
      p1=substr(numero1,2,3)
      p2=substr(numero1,5,3)
      p3=substr(numero1,8,3)
      p4=cents
      texto1= ''
      texto2= ''
      texto3= ''
      texto4= ''

      linha1= ''
      linha2= ''
      linha3= ''
        if val(p1) > 0
          status1=iif(val(p1) > 1,'2','1')
        else
          status1= ' '
        endif

        do while contador <=4
          vlc_item=str(contador,1)
          grupo='P'+str(contador,1)
          extenso=iif(&grupo='000','',ltrim(&grupo))
          do case
            case len(extenso)=3
            if extenso = '100'
              vtexto="texto"+vlc_item
              &vtexto=&vtexto+'CEM '
              contador=contador+1
              loop
              endif
              if right(extenso,2)='00'
                tab='N'+substr(extenso,1,1) + '00'
                vtexto="texto"+vlc_item
                  &vtexto=&vtexto+&tab
                contador=contador+1
                loop
              endif
              tab='N'+left(extenso,1)+'00'
              vtexto="texto"+vlc_item
              &vtexto=&tab+ 'E '
              dezena=val(right(extenso,2))
              if dezena < 20
                tab= 'N' + right(extenso,2)
                vtexto="texto"+vlc_item
                &vtexto=&vtexto+&tab
                contador=contador+1
                loop
              else
                tab= 'N' + substr(extenso,2,1) + '0'
                vtexto="texto"+vlc_item
                &vtexto=&vtexto+&tab
                tab='N0' + right(extenso,1)
                unidade=val(right(extenso,1))
                  if unidade > 0
                      vtexto="texto"+vlc_item
                    &vtexto=&vtexto + iif(val(extenso) > 10,'E ','')
                  endif
                  vtexto="texto"+vlc_item
                  &vtexto=&vtexto+iif(tab='N00',' ',&tab)
                endif

            case len(extenso)=2
                dezena=val(right(extenso,2))
                  if dezena < 20
                      tab= 'N' + right(extenso,2)
                      vtexto="texto"+vlc_item
                      &vtexto=&vtexto+&tab
                      contador=contador+1
                      loop
                  else
                      tab='N' + substr(extenso,1,1) + '0'
                      vtexto="texto"+vlc_item
                      &vtexto=&vtexto + &tab
                      tab='N0' + Right(extenso,1)
                      unidade=val(right(extenso,1))
                        if unidade > 0
                          vtexto="texto"+vlc_item
                          &vtexto=&vtexto+'E '
                        ENDIF
                        vtexto="texto"+vlc_item
                        &vtexto=&vtexto+iif(tab='N00',' ',&tab)
                    endif
            case len(extenso) = 1
                    tab='N0' + Right(extenso,1)
                    vtexto="texto"+vlc_item
                    &vtexto=&vtexto+iif(tab='N00',' ',&tab)
            otherwise
            vtexto="texto"+vlc_item
            &vtexto= ''
          endcase
          contador=contador+1
        enddo
        if val(p1+p2+p3)=0 .and. val(p4) # 0
          final=texto4+(iif(val(p4)=1,centavo,centavos))
        endif
        if val(p1+p2+p3) # 0
          final= iif(len(texto1)=0,' ',texto1 + iif(status1= '1',MILHAO, ;
          MILHOES))+' '+ iif(len(texto2)=0,' ',  texto2+mil)+ texto3 ;
          + iif(val(p2+p3)=0, 'DE','')
          final=final+iif(val(p1+p2+p3)=0,' ',iif(val(p1+p2+p3)=1, moeda1,moeda))
          final=final+iif(val(p4)=0,'',iif(val(p1+p2+p3)=0,'','E ') + texto4 ;
          + (iif(val(p4)=1,centavo,centavos)))
        endif

RETURN (final)

ENDFUNC


PS: Marcos Guedes, peço por favor que edite essa minha postagem e coloque dentro de um quadro, como a do Alceu. E depois me explique como faço pra postar direto dessa forma.

Muito grato

marcio
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Em curso Re: Recibo

Mensagem por Marcos Guedes em 1/3/2010, 16:24

marcio escreveu:PS: Marcos Guedes, peço por favor que edite essa minha postagem e coloque dentro de um quadro, como a do Alceu. E depois me explique como faço pra postar direto dessa forma.


Marcio, fiz a alteração que pediu e criei um tópico relativo à sua dúvida:
[Você precisa estar registrado e conectado para ver este link.]

_________________
Marcos Guedes - Programador e desenvolvedor Web.

Convidado, seja nosso seguidor no Twitter:
twitter.com/programacaobras

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Em curso Re: Recibo

Mensagem por Marcos Guedes em 16/5/2010, 12:13

Resolveu o problema, Clodoaldo?

_________________
Marcos Guedes - Programador e desenvolvedor Web.

Convidado, seja nosso seguidor no Twitter:
twitter.com/programacaobras

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


Permissão deste fórum:
Você não pode responder aos tópicos neste fórum