Jump to content

Leaderboard

  1. nunopicado

    nunopicado

    Moderator


    • Points

      6

    • Content Count

      6,041


  2. pedropregueiro

    pedropregueiro

    New Member


    • Points

      1

    • Content Count

      10


  3. Skincb

    Skincb

    New Member


    • Points

      1

    • Content Count

      2


  4. Rechousa

    Rechousa

    Moderator


    • Points

      1

    • Content Count

      1,229



Popular Content

Showing content with the highest reputation since 05/25/2019 in all areas

  1. 2 points
    A resposta mais curta é: Dá! No entanto, para estares a perguntar isso, fico na dúvida se percebi bem a tua questão. Para definir um record, crias todos exactamente da mesma forma, seja um, ou qualquer outra quantidade. type TPessoa = record Nome: string; DataNasc: string; end; TLogin = record Username: string; Password: string; end; TMorada = record Addr1: string; Addr2: string; CPostal: string; Localidade: string; Pais: string; end; Se não estiveres esclarecido, por favor explica melhor a tua questão.
  2. 2 points
    OK malta, ainda pensei que isto ia lá depois de esfumarem um pouco, mas estou a ver que não... Daqui a tempos, alguém, quem sabe um de vocês, vai precisar pesquisar uma cena qualquer no tópico, e o que vai ver é lixo, com fartura. O meu ponto de vista é: O @brunotoira indicou num tópico onde anda malta a precisar que poderia partilhar a solução. Não disse em que termos, remetendo mais explicações para uma comunicação privada. A questão se o deveria fazer ou não no tópico é interessante, sem dúvida, e não totalmente definida. Por um lado, não disse especificamente que está a vender o código, pelo que não é uma venda. Por outro, indicou que desta vez não vai simplesmente colocar o código público, o que para bom entendedor, meia palavra basta. Qualquer membro pode concordar ou discordar desta posição. Se concordar, e lhe interessar, fala com ele. Se não concordar, está à vontade para denunciar a mensagem para ser alvo de análise posterior pelo staff do forum O que não pode, garantidamente, é começar uma troca de galhardetes sem ponta de sentido, ainda mais depois de eu avisar aqui em letra bem visível que qualquer assunto relacionado a isso seria para ser tratado por PM. Andamos todos a brincar? Somos crianças agora, num recreio onde só se pode jogar se todos jogarem pelas nossas regras? Que eu saiba, aqui não há crianças. Seria bom que todos se lembrassem disso. Quantas mais páginas vamos encher com lixo num tópico que trata de um assunto que claramente interessa a todos os que cá andam? Qualquer um daqui está à vontade para fazer o código que quiser, e partilhar ou não esse código. E se partilhar, as condições em que o faz são também suas. Se é preferível do ponto de vista da comunidade que o código seja partilhado gratuitamente? Claro. Eu próprio já o fiz várias vezes como disse o @CrominhO, e também já adaptei para mim código feito por outros, inclusivamente do @brunotoira. É por isso que isto se chama Comunidade. Mas exigir isso é que não podemos fazer. Acham que ele, ou qualquer outro, deve partilhar de borla? Escrevam-lhe em privado e tentem convencê-lo disso, com boa educação e, sim, bom senso. Se ele recusar, está no seu direito. E se não partilhar, não significa que não possa ajudar pontualmente uma ou outra dúvida que alguém exponha no tópico, como de resto é costume e já tem feito. Vamos por favor acabar com as birras, que já todos temos idade para isso.
  3. 1 point
    Não vale a pena stressar, a AT não costuma enviar coimas por atraso na entrega do SAFT. Só costuma enviar coimas por detectar que um saft não foi enviado.
  4. 1 point
    Esse erro acontece porque miles não está definido no scope que chama a função convert. O que devias fazer é colocar o input de dados fora da função convert: esta função deveria ter única e exclusivamente o objectivo de fazer a conversão, e não de lidar com o input do utilizador. Exemplo: # Função só com o objectivo de cálculo def dobro(x): return 2*x # Scope onde a função é chamada: aqui deve decorrer o input e a chamada do cálculo a = int(input()) b = dobro(a) print("O dobro de {0} é {1}.".format(a, b)) Cumprimentos.
  5. 1 point
    Olá Vitor, No PC do cliente apenas precisas do Runtime do Cyrstal Reports. Mais informação aqui: https://www.tektutorialshub.com/crystal-reports/how-to-download-and-install-crystal-report-runtime/ Espero ter ajudado, Pedro Martins
  6. 1 point
    Olá Nandinho, Parece que te esqueçeste de usar o método input para receber o valor em milhas: input_m = input("please enter input in miles ") # atencao que o input vira como string por isso tens de converter float_input = float(input_m) Além disto podes também melhorar um pouco o teu código tirando a variável "miles" do método, visto que não a estás a usar. E, já agora, também podes fazer o print numa só linha: print("km: %s" % km)
  7. 1 point
    Viva, Se queres começar sempre com um ficheiro (registos) vazio, penso que só precisas disto: {$I-} rewrite(f); {$I+} Se queres manter os registos na sessão anterior, acrescenta o "Seek(f,Filesize(f));" {$I-} reset(f); if ioresult<>0 then rewrite(f); Seek(f,Filesize(f)); {$I+} Cps,
  8. 1 point
    Esta página explica a diferença entre e o uso das duas constantes. A constante F_SETFD pode ser lida como 'Set File Descriptor Flag' e a F_SETFL pode ser lida como 'Set File Flag'. A primeira define várias opções aplicáveis ao descritor do ficheiro que definem como lidar com o descritor e não com o ficheiro. A segunda define várias opções aplicáveis na abertura/criação do ficheiro, que são mantidas no descritor, como o agendamento das actualizações do ficheiro através de O_ASYNC e O_DIRECT.
  9. 1 point
    Pode ser WS, pode ser telefone, pode até ser por sinais de fumo... Enquanto não estiver definido, não podemos fazer nada.
  10. 1 point
    Um dia saberemos... (AKA: Acho que ainda ninguém sabe nada em concreto, nem eles)
  11. 1 point
    Nas faturas emitidas pelo Regime da margem, o IVA não é mencionado na fatura, isto é o IVA está incluído no preço de venda e não é evidenciado na fatura. No SAF-T é como se fosse uma venda de um produto isento. Todos os valores deverão ser IVA incluído. No exemplo, o UnitPrice e o CreditAmount, NetTotal e GrossTotal serão 389,90. O TaxPayable será 0.00. O TaxCode será "OUT", o TaxPercentage "0.00" e o motivo da isenção será o M15 - "Regime da margem de lucro – Objetos de coleção e antiguidades".
  12. 1 point
    Eu também estou á espera do código do @derrerter Caro colega de profissão, deduzo eu. O senhor desculpe mas faz-me lembrar um tal Joe Berar** que manda nesta mer** toda, em tudo e todos, ainda por cima anda no "gozo" comigo... menos mal o Joe é com nós todos... Ora bem... lamento informar, mas não será com estas atitudes rudes da sua parte que lhe vou dar um único minuto da minha vida para o ajudar seja no que for. Por ultimo, registe isto: Eu nunca, nem a si nem a ninguem, lhe faltei uma unica vez ao respeito. Se é um voyer/cusco/copy-paste/programador de codigo alheio e nem referencia nada, a quem lhe deu de mão beijada esse código, que anda aqui a copiar código e vender á grande e á francesa aos seus clientes... lamento mas a mama acabou (pelo menos da minha parte) Quanto ao Juizo, vou deixar ao critério de um dos administradores atribuir o "juizo" a quem acharem que falta. Sinceramente, vou gostar mesmo de ver você a perder meses a desenvolver isto, e no fim QUERO VER o seu código fonte aqui no site. Nem que seja em MS-DOS. Volto a frisar, você é um bom colaborador deste site, todos aguardamos ansiosamente pelo código e brokers e gateways. Ah, quanto ao seu código, só mais uma coisinha..... Eu nao preciso de nem uma unica linha do seu source-code, ao contrário de si 😉caso contrário não me tinha pedido para lhe enviar. Vou sair um bocado deste site. Pá desculpem o desabafo, mas quem me conhece sabe que nao ando aqui a brincar, quanto mais para aturar malucos.
  13. 1 point
    tens que usar uma queue mandas o ó raiz para a queue, e depois é : - tirar um nó da queue - apresentar o nó - inserir na queue os nós derivados do nó que tiraste
  14. 1 point
    Já consegui resultados, pode estar com muita palha, mas está a funcionar: Select bi Goto Top Scan If bi.edebito>0 Local MyPrOld, MyPrNew, impcust u_sqlexec([select bi.bistamp from bi WHERE Bi.bostamp=']+(Alltrim(bo.bostamp))+['],[curs0]) Select curs0 Browse MyPrOld='' MyPrOld=MyPrOld+[select st.custog AS 'Pref', ] MyPrOld=MyPrOld+[st.ref AS 'Rref' ] MyPrOld=MyPrOld+[from st (nolock) ] MyPrOld=MyPrOld+[where st.ref=']+(bi.ref)+[' ] u_sqlexec(MyPrOld,"curs1") Select curs1 Browse If bi.edebito*(1-bi.desconto/100)*(1-bi.desc2/100)>curs1.Pref MyPrNew='' MyPrNew=MyPrNew+[select bi.edebito*(1-bi.desconto/100)*(1-bi.desc2/100) AS 'Pref', ] MyPrNew=MyPrNew+[bi.ref AS 'RRef' ] MyPrNew=MyPrNew+[from bi (nolock) ] MyPrNew=MyPrNew+[where bi.ref=']+(curs1.Rref)+[' and bi.bistamp=']+(Alltrim(curs0.bistamp))+[' ] mensagem("Passou pelo sim!!","DIRECTA") impcust='' impcust=impcust+[update st set ] impcust=impcust+[st.epcult=']+Strtran(Str((bi.edebito*(1-bi.desconto/100)*(1-bi.desc2/100)),12,4),',','.')+[', ] impcust=impcust+[st.custog=']+Strtran(Str((bi.edebito*(1-bi.desconto/100)*(1-bi.desc2/100)),12,4),',','.')+[' ] impcust=impcust+[where st.ref=']+(bi.ref)+[' ] If Not (u_sqlexec(impcust)) mensagem("Deu erro ao actualizar os stocks!!","DIRECTA") u_sqlexec("ROLLBACK") Return .F. Endif u_sqlexec("COMMIT TRANSACTION") Else MyPrNew='' MyPrNew=MyPrNew+[select bi.edebito*(1-bi.desconto/100)*(1-bi.desc2/100) AS 'Pref', ] MyPrNew=MyPrNew+[bi.ref AS 'RRef' ] MyPrNew=MyPrNew+[from bi (nolock) ] MyPrNew=MyPrNew+[where bi.ref=']+(curs1.Rref)+[' and bi.bistamp=']+(Alltrim(curs0.bistamp))+[' ] mensagem("Passou pelo nao!!","DIRECTA") impcust='' impcust=impcust+[update st set ] impcust=impcust+[st.epcult=']+Strtran(Str((bi.edebito*(1-bi.desconto/100)*(1-bi.desc2/100)),12,4),',','.')+[' ] impcust=impcust+[where st.ref=']+(bi.ref)+[' ] If Not (u_sqlexec(impcust)) mensagem("Deu erro ao actualizar os stocks!!","DIRECTA") u_sqlexec("ROLLBACK") Return .F. Endif u_sqlexec("COMMIT TRANSACTION") Endif Endif Endscan
  15. 1 point
    Como seria de esperar não vi o teu código todo ao pormenor, mas houve algo que me saltou à vista. Estás a utilizar o ReWrite para escrever no ficheiro e essa função limpa e cria o ficheiro por isso ele mostra só o último registo porque é o único que tem. Substitui o ReWrite pelo Reset.
×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.