GARANTIR DESCONTO

Fórum porcentagem #278094

20/04/2005

0

Olá pessoal, preciso da ajuda de vcs!!
O meu sistema é Uma Pesquisa de Satisfação, onde são entrevistadas as pessoas por Fábrica onde tenho 16 questões e são gravadas as opiniões nos campos Bom, Regular, Ruim e Nulo. Preciso fazer a porcentagem de cada uma das opções: Bom, Regular, Ruim e Nulo, observando qual a fábrica e qual o nº da questão...
Queria saber a maneira mais fácil de fazer isso, posso fazer usando SQL?, se minha tabela é do paradox???
Obriagada.


Daia

Daia

Responder

Posts

20/04/2005

Fred

coloca a estrutura da tabela ae!!


Responder

Gostei + 0

20/04/2005

Rjun

Daia

Embora Paradox não seja algo que tenha muito conhecimento, como você esta usando TTable acho que nõa ha como usar SQL.


Responder

Gostei + 0

20/04/2005

Rjun

Daia

Esqueça a asneira que acabei de postar. Você pode usar SQL sim. Coloque a estrutura da tabela que fica mais facil pra ajudar.


Responder

Gostei + 0

20/04/2005

Daia

Daia Esqueça a asneira que acabei de postar. Você pode usar SQL sim. Coloque a estrutura da tabela que fica mais facil pra ajudar.


dbPesquisa NumPergunta Fábrica Bom Regular Ruim
17FILIAL1000
26FILIAL1000
35_2FILIAL1000
45_1FILIAL1000
55FILIAL1000
64_2FILIAL1000
74_1FILIAL1000
84FILIAL1000
93_2FILIAL1000
103_1FILIAL1000
113FILIAL1000
122_3FILIAL1000
132_2FILIAL1000
142_1FILIAL1000
152FILIAL1000
161FILIAL1000
177MATRIZ000
186MATRIZ000
195_2MATRIZ000
205_1MATRIZ000
215MATRIZ000
224_2MATRIZ000
234_1MATRIZ000
244MATRIZ000
253_2MATRIZ000
263_1MATRIZ000
273MATRIZ000
282_3MATRIZ000
292_2MATRIZ000
302_1MATRIZ000
312MATRIZ000
321MATRIZ000
Este são os dados que tenho gravados na minha tabela...
é isso que tu precisa???


Responder

Gostei + 0

20/04/2005

Daia

Fiz um SQL assim:
SELECT * FROM DBPESQUISA WHERE FABRICA=´MATRIZ´ AND NUMPERGUNTA=´1´
mas aí preciso fazer o label receber este resultado, não consegui...


Responder

Gostei + 0

20/04/2005

Rjun

Tire uma duvidas.

1) Os campos BOM/REGULAR/RUIM serão totalizados a cada resposta ?

2) Existem valores 2_3, 3_2. São números de perguntas ?

3) Você quer uma porcentagem de respostas for filial ? Ex:
Filial 1/ Pergunta 1 => Bom= 30; Ruim = 20; Regular = 15;

resultado
Bom = 46,15¬
Ruim = 30,76¬
Regular = 23,09¬

É isso ?


Responder

Gostei + 0

20/04/2005

Daia

Tire uma duvidas. 1) Os campos BOM/REGULAR/RUIM serão totalizados a cada resposta ? Sim, a cada formulário preenchido é confirmada a gravação... 2) Existem valores 2_3, 3_2. São números de perguntas ? Sim 3) Você quer uma porcentagem de respostas for filial ? Ex: Filial 1/ Pergunta 1 => Bom= 30; Ruim = 20; Regular = 15; Isso mesmo... resultado Bom = 46,15¬ Ruim = 30,76¬ Regular = 23,09¬ ou seja: Matriz - Pergunta 1 - Bom = 46,15¬ Filial1 - Pergunta 1 - Bom = 50,00¬ . . . É isso ?

Sim


Responder

Gostei + 0

20/04/2005

Rjun

Daia

Em vez de usar SQL, crie mais tres campos na tabela para guardar a porcentagem de cada resposta. No evento BeforePost faça os calculos para guardar a porcentagem.

PRegular = Regular / (Regular+Bom+Ruim) * 100;
PRuim = Ruim / (Regular+Bom+Ruim) * 100;
PBom = Bom / (Regular+Bom+Ruim) * 100;


Responder

Gostei + 0

20/04/2005

Daia

ok, vou tentar, mas se eu precisar de ajuda vou te procurar...
Só não entendi porque (Regular+Bom+Ruim) somas estes valores??


Responder

Gostei + 0

20/04/2005

Rjun

Só não entendi porque (Regular+Bom+Ruim) somas estes valores??


Como você faria o cálculo das porcentagens ?


Responder

Gostei + 0

20/04/2005

Daia

por exemplo quem opinou para Regular: Regular * 100 /100
Sei lá, eu imaginava isso...


Responder

Gostei + 0

20/04/2005

Daia

por exemplo quem opinou para Regular: Regular * 100 /100 desculpa, vou corrigir regular / 100 * 100 Sei lá, eu imaginava isso...



Responder

Gostei + 0

20/04/2005

Rjun

Pela sua 1ª. fórmula, vamos supor que tenhamos 134 respostas como regular :

Regular * 100 /100


134 * 100 / 100 = 134¬

Pela sua 2ª fórmula :

regular / 100 * 100


134 / 100 * 100 = 134¬.

Para achar a porcentagem voce deve dividir o total de respostas que voce quer (regular) pelo total geral de respostas dadas (regular+bom+ruim) e multiplicar por 100.


Responder

Gostei + 0

20/04/2005

Daia

ok... entendi...
Coloquei no BeforePost o seguinte código, mas não dá certo...
Mas se eu fizer como tu falou ele vai pegar todos os Regular, ruim e bom, pois não estou especificando fabrica na hora de gravar, preciso fazer esta porcentagem por fábrica e NumPergunta...

Pesquisa.FieldByName(´PBom´).AsString := (Pesquisa.FieldByName(´Bom´).AsString / (Pesquisa.FieldByName(´Regular´).AsString + Pesquisa.FieldByName(´Ruim´).AsString + Pesquisa.FieldByName(´Bom´).AsString) * ´100´


Responder

Gostei + 0

20/04/2005

Daia

mudei para:
Pesquisa.FieldByName(´PBom´).Value := (Pesquisa.FieldByName(´Bom´).Value / (Pesquisa.FieldByName(´Regular´).Value + Pesquisa.FieldByName(´Ruim´).Value + Pesquisa.FieldByName(´Bom´).Value)) * 100;

mas dá um erro de Invalid Floating Operator


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar