Por que nao funciona Macro em code Block?

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

ricardomouramarques
Usuário Nível 1
Usuário Nível 1
Mensagens: 13
Registrado em: 19 Out 2007 00:41
Localização: Minas Gerais
Contato:

Re: Por que nao funciona Macro em code Block?

Mensagem por ricardomouramarques »

Não são tão poucos assim não... E acredite, tem clientes que trabalham com bancos que vc nunca imaginou...
Trabalho em uma instituição financeira no seguimento de Pessoa Jurídica. Nossos clientes também são clientes de outros bancos e sempre aparece algum (cliente) que possui conta em tal de #$@¨% que nunca ouvi falar...
Segue abaixo uma pequena relação de alguns bancos. Dá até pra fazer um banco de dados com ela. Não estão todos, mas se desejar, na segunda feira posso postar uma relação completa com os bancos oficiais brasileiros.


246 | Banco ABC Brasil S.A.

356 | Banco ABN AMRO Real S.A.

025 | Banco Alfa S.A.

641 | Banco Alvorada S.A.

029 | Banco Banerj S.A.

038 | Banco Banestado S.A.

740 | Banco Barclays S.A.

107 | Banco BBM S.A.

031 | Banco Beg S.A.

036 | Banco Bem S.A.

096 | Banco BM&F de Serviços de Liquidação e Custódia S.A

394 | Banco BMC S.A.

318 | Banco BMG S.A.

752 | Banco BNP Paribas Brasil S.A.

248 | Banco Boavista Interatlântico S.A.

237 | Banco Bradesco S.A.

225 | Banco Brascan S.A.

263 | Banco Cacique S.A.

222 | Banco Calyon Brasil S.A.

040 | Banco Cargill S.A.

745 | Banco Citibank S.A.

215 | Banco Comercial e de Investimento Sudameris S.A.

756 | Banco Cooperativo do Brasil S.A. - BANCOOB

748 | Banco Cooperativo Sicredi S.A. - BANSICREDI

505 | Banco Credit Suisse (Brasil) S.A.

229 | Banco Cruzeiro do Sul S.A.

003 | Banco da Amazônia S.A.

707 | Banco Daycoval S.A.

024 | Banco de Pernambuco S.A. - BANDEPE

456 | Banco de Tokyo-Mitsubishi UFJ Brasil S.A.

214 | Banco Dibens S.A.

001 | Banco do Brasil S.A.

027 | Banco do Estado de Santa Catarina S.A.

047 | Banco do Estado de Sergipe S.A.

037 | Banco do Estado do Pará S.A.

041 | Banco do Estado do Rio Grande do Sul S.A.

004 | Banco do Nordeste do Brasil S.A.

265 | Banco Fator S.A.

224 | Banco Fibra S.A.

175 | Banco Finasa S.A.

252 | Banco Fininvest S.A.

233 | Banco GE Capital S.A.

734 | Banco Gerdau S.A.

612 | Banco Guanabara S.A.

063 | Banco Ibi S.A. Banco Múltiplo

604 | Banco Industrial do Brasil S.A.

320 | Banco Industrial e Comercial S.A.

653 | Banco Indusval S.A.

630 | Banco Intercap S.A.

249 | Banco Investcred Unibanco S.A.

184-8 | Banco Itaú BBA S.A.

652 | Banco Itaú Holding Financeira S.A.

341 | Banco Itaú S.A.

479 | Banco ItaúBank S.A

376 | Banco J. P. Morgan S.A.

074 | Banco J. Safra S.A.

600 | Banco Luso Brasileiro S.A.

392 | Banco Mercantil de São Paulo S.A.

389 | Banco Mercantil do Brasil S.A.

755 | Banco Merrill Lynch de Investimentos S.A.

151 | Banco Nossa Caixa S.A.

045 | Banco Opportunity S.A.

623 | Banco Panamericano S.A.

611 | Banco Paulista S.A.

643 | Banco Pine S.A.

638 | Banco Prosper S.A.

747 | Banco Rabobank International Brasil S.A.

633 | Banco Rendimento S.A.

072 | Banco Rural Mais S.A.

453 | Banco Rural S.A.

422 | Banco Safra S.A.

008 | Banco Santander Banespa S.A.

250 | Banco Schahin S.A.

749 | Banco Simples S.A.

366 | Banco Société Générale Brasil S.A.
Imagem
Ademir
Usuário Nível 3
Usuário Nível 3
Mensagens: 170
Registrado em: 31 Jul 2007 16:28
Localização: Porto Ferreira-SP

Re: Por que nao funciona Macro em code Block?

Mensagem por Ademir »

Bom dia amigos !

Bom, pra iniciar, quero pedir desculpas e esclarecer que o exemplo que passei era apenas um exemplo mesmo. Para trabalhar com bancos utilizo um cadastro normal. Na verdade, o que eu queria mesmo era entender o funcionamento de um code block. Por isso passei esse exemplo, pois entendendo o exemplo, acabaria entendendo o funcionamento do code block. Mas o que importa é que o exemplo do Ricardo funcionou legal. Nunca havia usado o Valid dessa forma (condiçao,.t.). Inclusive, na condição, se atribuir a variavel com o sinal de igual apenas não funciona. Pude ver que nesse caso tem que atribuir com ":=" (atribuição in line). O Maligno comentou que eu poderia usar uma função para resolver o problema. Realmente, para isso, até hoje eu UTILIZEI funções. Mas prefiro evitar o uso das mesmas, se for possível e tiver o mesmo resultado. É isso pessoal. Muito obrigado a todos pela atenção.
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

Inclusive, e adicionando mais alguma informação que não foi colocada de forma explícita e que poderia até levar alguns colegas à dúvida, o retorno do VALID pode ser o resultado de uma expressão múltipla.

No Clipper uma expressão múltipla, mesmo que composta por várias expressões, retorna apenas um resultado; o último. Portanto, numa expressão composta do tipo (x==1, x+y, "TESTE", .T.) tem-se várias expressões simples; cada qual retornando um valor, e nem todos do tipo lógico. O que vale é o último. Pela regra da precedência dos parênteses, tudo o que está entre os parênteses terá de ser executado primeiro, da esquerda pra direita. As vírgulas separam as expressões. Ao executar a última expressão o retorno será aproveitado e os demais descartados pelo compilador. E por causa disso, os retornos descartados, claro, não precisam ser do tipo lógico.

Logicamente isso não é válido apenas numa cláusula VALID, mas em qualquer lugar em que uma expressão (simples ou composta) precisar ser utilizada.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Responder