RES: [firebase-br] Ajuda SP
Michelle - House
michelle em housesoft.com.br
Sex Abr 15 11:15:40 -03 2005
Oi Eduardo,
Realmente tá complicado esta sp, o que preciso fazer é o seguinte:
Tenho uma tabela onde estão meus lancamentos despesas e receitas, com data
de vencto e data de pagto ( data de compensação do titulo). Cada titulo é
lanc. em uma conta / subconta e centro de custo. Sendo que a conta e
subconta estão relacionadas , e o centro de custo é
Preciso trazer a soma desses lanc. por cada mês dividido por centro de custo
dentro de cada conta/subconta. Considerando a condição de consulta, se for
compensado , devo buscar pela data de pagto, e se for em aberto ( não
compensado), devo buscar pela data de vencto.
Ex.: 1.Custo fixo ( conta ) Janeiro Fevereiro
1.1. Salários ( subconta)
Escritório (centro de custo) .... total R$ total R$
Fábrica (centro de custo) .... total R$ total R$
Se tiver uma outra sugestão de como fazer , agradeço ajuda.
Obrigada
Michelle
-----Mensagem original-----
De: lista-bounces em firebase.com.br
[mailto:lista-bounces em firebase.com.br]Em nome de Eduardo Jedliczka
Enviada em: quinta-feira, 14 de abril de 2005 23:44
Para: FireBase
Assunto: Re: [firebase-br] Ajuda SP
Michelle,
para uma de suas primeiras SPs esta está bem complicadinha, não acha ???
Então qual é o verdadeiro propósito desta SP ??? Assim podemos sugerir
conceitos mais práticos e simples...
Visto que Execute Statement é algo duro de debugar e um verdadeiro
desperdício de "material bélico"...
[s]
==========================
Eduardo Jedliczka
Apucarana - Pr
==========================
----- Original Message -----
From: "Michelle - House" <michelle em housesoft.com.br>
To: "Lista firebase" <lista em firebase.com.br>
Sent: Thursday, April 14, 2005 7:09 PM
Subject: [firebase-br] Ajuda SP
> Olá,
>
>
> Estou começando a trabalhar agora com SP, e estou com um probleminha,
> construi a procedure abaixo
>
> Criei sem problemas mas qdo tento executá-la me retorna o seguinte erro:
>
> Invalid token.
> Dynamic SQL Error.
> SQL error code = -104.
> Token unknown - line 1, char 36.
> FROM.
>
> Será que alguém poderia me ajudar a encontrar onde está o erro que cometi.
>
> Desde já agradeço ajuda.
>
> Michelle
>
>
> CREATE PROCEDURE REL_BAL_SEMESTRAL
> (
> DATAINI DATE,
> DATAFIM DATE,
> COMPENSADO INTEGER,
> EMP VARCHAR(2),
> CONTROLE INTEGER,
> NUM_MESES INTEGER
> )
> AS
> DECLARE VARIABLE SWHERE VARCHAR(200);
> DECLARE VARIABLE SQL VARCHAR(200);
> DECLARE VARIABLE CONTADOR INTEGER;
> DECLARE VARIABLE NCOUNT INTEGER;
> DECLARE VARIABLE SCC VARCHAR(50);
> DECLARE VARIABLE SCODCONTA VARCHAR(50);
> DECLARE VARIABLE SCODSUBCONTA VARCHAR(50);
> DECLARE VARIABLE SENTSAI VARCHAR(20);
> BEGIN
> IF (COMPENSADO = 1) THEN
> SWHERE = 'WHERE DATPAG BETWEEN :DATAINI AND :DATAFIM AND COMPENSADO =
> 1
> AND EMP = :EMP';
> ELSE IF (COMPENSADO = 0) THEN
> SWHERE = 'WHERE DATVEN BETWEEN :DATAINI AND :DATAFIM AND COMPENSADO =
> 0
> AND EMP = :EMP';
> /* (COMPENSADO = 2) VER DEPOIS QDO FOR */
> SQL = 'SELECT COUNT(DISTINCT(CODSUBCONTA) FROM LANC_FINAN' || SWHERE;
> EXECUTE STATEMENT :SQL
> INTO :NCOUNT;
> SQL = 'SELECT DISTINCT(CODSUBCONTA), CODCONTA, ENTSAI FROM LANC_FINAN '
> ||
> SWHERE;
> CONTADOR = 1;
> WHILE (CONTADOR <= NCOUNT) DO
> BEGIN
> FOR EXECUTE STATEMENT :SQL
> INTO :SCODSUBCONTA, :SCODCONTA, :SENTSAI
> DO
> BEGIN
> EXECUTE PROCEDURE INS_CC_REL_SEMESTRAL
> (:SCODCONTA , :SCODSUBCONTA , :SENTSAI, :DATAINI,
> :DATAFIM, :COMPENSADO , :EMP , :NUM_MESES, :CONTROLE);
> END
> CONTADOR = CONTADOR + 1;
> END
> END
>
----------------------------------------------------------------------------
----
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas:
http://search.gmane.org/search.php?group=firebase
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas:
http://search.gmane.org/search.php?group=firebase
Mais detalhes sobre a lista de discussão lista