Ir para conteúdo
Fórum Script Brasil

kuroi

Membros
  • Total de itens

    7.184
  • Registro em

  • Última visita

Tudo que kuroi postou

  1. é, ivana eu uso a 8.5 e aqui as opcoes q ele te fala pra você usar o Show as a percentage dentro do crosstab ou pra adicionar o campo com o PercentOfCount() não existem. se o 9 tiver essas opcoes, então isso resolve tudo. sempre gostei do 8.5, sempre achei bem completo, mas essa é uma limitacao bem seria. mas então ve ai, se você conseguir o crystal 9, você deve resolver esse seu problema.
  2. JOGO 01: AFRICA DO SUL x MEXICO JOGO 02: URUGUAI x FRANCA JOGO 03: ARGENTINA JOGO 04: COREIA DO SUL x GRECIA JOGO 05: INGLATERRA JOGO 06: ARGELIA JOGO 07: ALEMANHA JOGO 08: GANA JOGO 09: HOLANDA JOGO 10: JAPAO JOGO 11: ITALIA JOGO 12: NOVA ZELANDIA x ESLOVAQUIA JOGO 13: COSTA DO MARFIM x PORTUGAL JOGO 14: BRASIL JOGO 15: CHILE JOGO 16: ESPANHA
  3. fahledu, tb descobri aqui q se você clicar no menu Ferramentas -> Utilitarios de banco de dados -> Compactar e Reparar Banco de Dados, ele sempre volta a numeracao ate o ultimo numero q estiver na tabela (se ela estiver vazia, volta pra 1). não sei se isso é viavel pra vc, mesmo q você descubra alguma forma de fazer isso por codigo, acho q ele vai sempre fechar o banco todo e depois abrir de novo. ve ai o q você acha.
  4. kuroi

    Arquivo de texto

    tente isso: scanf("%s", nome[a]);
  5. bem observado, eu não tinha visto isso.
  6. kuroi

    Arquivo de texto

    então poste o codigo q você tentou com o \n.
  7. é, infelizmente com minha capacidade limita so consegui pensar nesses metodos complicados. ve ai se você consegue, qualquer coisa poste.
  8. justiceira, já te falei q seu nome é o melhor q já apareceu aqui no forum?? depois de kuroi, so. mas quanto ao erro, faz o seguinte, depois da linha q testa o BOF e o EOF, coloca isso: TBatividade.MoveFirst se depois disso o erro continuer, então apaga ou comente a linha On Error GoTo Primeiro (so pra testar, depois pode por de volta). e tenta executar o codigo de novo. quando der erro, ele vai apontar qual a linha q ocorre o erro. ai poste aqui qual é essa linha pra gente ver se descobre do q se trata.
  9. no comeco da sub, logo depois das declaracoes das variaveis, insira o codigo: Dim t As Integer t = Target.Row[/code] e então, sempre onde aparecer Cells(1, [alguma coisa]) troque esse primero 1 por t e veja se não funciona.
  10. é, o codigo original acho q so testava a coluna 1 tb e agora e ficou testando so a linha 1. mas você quer q, quando ele digita, ele testa todas as linhas da planilha ou so a linha em q ele esta digitando.
  11. tiago, isso ta sendo feito localmente no proprio pc do cara, ou esta sendo feito num servidor local, ou ta sendo feito num servidor remoto?? os relatorio q funcionam tb chamam esse .rpt temporario no windows\temp?? sera q isso so não acontece nessa funcao ExportToPdf()?? então é possivel q seja aquele problema de permissao q falei. fora isso, nessa sua funcao, tente passar o rel por ByRef em vez de ByVal. e outra coisa, pelo q você disse você ta declarando um objeto rel dentro da sua pagina e depois declara o parametro com o mesmo nome rel nessa funcao. sei q nesses casos o visual basic costuma considerar o objeto declarado no menor range, mas acho q o melhor seria você declarar algum desses dois rel com outro nome pra você ter certeza de qual esta usando. apesar de q olhei seu codigo de novo e você passa o rel por parametro e não esta usando. qual a finalidade de você passar ele por parametro?? e o q é relatório_rpt?? uma classe q você criou?? e o q é o objeto relRoteiroFiscal??
  12. tiago, acho q isso pode ser problema de permissao do usuario do windows. é possivel q ele não tenha permissao pra alterar a pasta temp, ou ainda possivelmente a pasta onde ta sua aplicacao, de uma olhada nisso.
  13. dando uma olhada no seu codigo, acho q você pudia fazer o seguinte: ta vendo no seu codigo q aparece escrito Cells e logo em seguida é aberto parenteses?? dentro do parenteses tem sempre ([alguma coisa], 1). se você trocar isso por (1, [alguma coisa]) em todas as vezes q aparecer escrito Cells deve fazer o q você quer.
  14. ó, pensei numa solucao aqui q num vai ser tão dificil. é o seguinte, você faz o crosstab dentro de um subreport. e você aponta esse subreport pra dentro de uma view (consulta) q já traga a porcentagem calculada. na verdade não entendi direito como funciona a sua porcentagem, porque as contas q você passou ai não batem (da onde vem aqueles 6%, 22% e 10%??). e tb não conheco o informix, mas dei uma pesquisada e pelo q vi, ele aceita subquerys. então você pudia tentar ver se um select mais o menos assim funciona: Select pergunta, opcao, idade, (100 * Count(*) / (Select Count(*) From tabela As b Where a.pergunta = b.pergunta And a.idade = b.idade)) As porcentagem From tabela As a Group By pergunta, opcao, idade ai você so tem q montar o seu subreport pondo dentro do crosstab esse campo porcentagem (o crosstab deve pedir q você faca uma totalizacao, ai você poe sum(), apesar de q ele não deve somar nd, porque já vira somado) e deve sair do jeito q você ta querendo. ai é so formatar o campo pra mostrar o simbolo de % no final. a e note q então, você deve ter no seu report principal um grupo pra cada pergunta. você poria o subreport no group header ou no group footer, e você teria q linkar o subreport com a pergunta atual passando por parametro. se tiver dificuldade nisso, me avisa. ai se você conseguir acertar a query deve funcionar certinho. veja ai, qualquer coisa poste.
  15. olhai o q consegui pra vc: essex.rar EDITADO: usei um codigo muito muito ruim em c (tb porque não consigo fazer muito melhor) q to ate com vergonha de postar, mas se você quiser olhar, é esse aqui: #include <ostream> union numero { double a; char b[8]; }; int main(void) { int cont = 0; unsigned char ch; bool inicio = false; FILE *fp; FILE *gravador; fp = fopen ("PDVPPROD.dat", "rb"); gravador = fopen("essex.txt", "wb"); int i, j, k; numero n; while (fscanf(fp, "%c", &ch) != EOF) { if (ch < 32 || ch == 127) { ch = ' '; } fprintf(gravador, "%c", ch); cont++; if (cont == 853) { fprintf(gravador, "%c", 13); fprintf(gravador, "%c", 10); inicio = true; cont = 0; } if (inicio) { if (cont == 64 || cont == 125 || cont == 198 || cont == 268) { if (cont == 64) { k = 3; } else if (cont == 125) { k = 1; } else if (cont == 198 || cont == 268) { k = 0; } for (j = 0; j <= k; j++) { for (i = 0; i <= 7; i++) { fscanf(fp, "%c", &(n.b[i])); } fprintf(gravador, "%10.2lf ", n.a); cont += 8; } } if (cont == 282) { fprintf(gravador, "%c", 13); fprintf(gravador, "%c", 10); cont = 0; } } } fclose(fp); fclose(gravador); return 0; }[/code]
  16. ivana, qual seu banco de dados??
  17. movido pra c++, tenta ficar de olho na sala q você posta, porque software livre não tem nd a ver com seu caso. e quanto ao erro, a mensagem já diz tudo, faltou um ";" antes do "}".
  18. como seria isso ivana, e qual problema você ta tendo??
  19. vixe, realmente não tem nd a ver. na verdade, pra retornar a porcentagem, quando você for fazer o sum() ou o count() você tem q selecionar a opcao Show as a percentage of. entretanto, olhei aqui e vi q no cross-tab ele não habilita essa opcao ai não da pra fazer o q você quer. o problema é o seguinte, pra calcular a porcentagem você precisa saber o valor do total maior. e se você usar uma formula q já tenha uma totalizacao dentro, ela não é aceita pra fazer otra totalizacao. existem possiveis solucoes, mas todas elas tem algum problema, q pode fazer ela não servir pra você. você pode: 1 - apontar o seu relatorio pra uma consulta (view) do banco de dados q traga junto num campo separado (usando subquery) o total geral q você precisa pra tirar a porcentagem. se esse total tem q ser por grupo pra vc, fica mais complicado mas deve dar. o problema dessa opcao é: qualquer alteracao q você fizer no selection formula do relatorio, vai estragar toda a conta da porcentagem. nesse caso, se precisar fazer filtro, você vai ter q, ou editar a query da consulta, ou passar os dados dinamicamente pro relatorio (atraves de recordset no visual basic, por exemplo). 2 - usar um subreport em vez de cross-tab. na verdade essa opcao deve ser praticamente inviavel, senao não existira cross-tab, somente subreport. essa opcao só vai ser possivel se você pode prever quais são as colunas q vao aparecer no cross-tab. exemplo, se você sabe q as colunas vao ser sempre somente "debito" e "credito", ai você pode fazer por subreport. 3 - se o total em q vai ser baseada a porcentagem for o total do relatorio e não do agrupamento, você pode passa-lo por parametro. 4 - umas gambiarras bem ridiculas do tipo criar uma tabela temporaria contendo o total de cada agrupamento levando em conta o filtro e linka-la com a tabela principal. veja ai se você gosta de alguma dessas opcoes. se a gente pensar um poco, talvez encontra otras tb. se quiser, meu MSN é rafaelsposito[arroba]hotmail.com, mas não devo entrar logo.
  20. estranho, nunca vi isso. qual a versao do seu crystal reports?? ele tb não vai aceitar totalizar uma formula q já seja baseado em totais.
  21. kuroi

    Arquivo de texto

    você quer q quando o usuario digite o texto no teclado, ele consiga separar em varias linhas??
  22. sacofritoxd, tentarei da uma olhada hj a noite ou no fim de semana, beleza??
  23. se você clicar em Change Summary, tem a opcao Pth percentile, é isso q você quer??
  24. no firefox, clique em menu Ferramentas -> Opções. na janela q abrir, va na aba Conteudo. na frente da opcao Permitir javascript (q obviamente tem q estar checada) vai ter um botao escrito Avançado.... clique nele e, vai abrir uma janela escrito "Scripts podem:" q deve ter uma opcao escrito Mover ou redimensionar janelas existentes. se essa opcao não estiver checada, os metodos resizeTo() e moveTo() não devem funcionar. e se não me engano, o padrão é essa opcao estar desmarcada, então seu codigo deve não funcionar pra maioria dos usuarios no firefox.
  25. kuroi

    Tamanho do programa.

    é, eu reparei isso no dev c++. quando eu bootar o linux aqui, eu do uma olhada como fica no gcc.
×
×
  • Criar Novo...