Jump to content
Fórum Script Brasil
  • 0

Como resolver este problema?


cribeiro

Question

tenho uma tabela de historico de salario com os campos conforme abaixo:

codigo_func data_alteracao cargo valor_salario

1 01/07/2008 10 500,00

1 01/09/2009 15 700,00

1 01/05/2010 20 900,00

preciso desenvolver um relatorio que sera emitido todos os meses onde mostra os funcionarios promovidos do mes, o relatorio deve mostrar o cargo e salario anterior e o cargo e salario atual, seguindo esta tabela modelo, o relatorio traria as duas ultimas alterações. como posso fazer isto no crystal XI?

valeu pessoal.

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0
cade o Kuroi, salvador dos perdidos no Crystal.....

salvador?? hehe quem é q fica contando essas historias por ai??

então, cribeiro, eu tinha visto seu tópico ontem, e na hora não pensei em nenhuma solucao, e fiquei pensando aqui, mas acabei esquecendo de vir responder, foi mal.

mas se eu entendi... o relatorio tem q mostrar as ultimas alteracoes do funcionario q foi promovido no mes, mesmo se as ultimas alteracoes tenham acontecido antes do comeco do mes??

se for isso, é meio complicado, mas pensei numas gambiarras aqui...

seria o seguinte, você filtra o relatorio pra todos os registros q sejam desse mes ou de datas anteriores.

então, você faz um grupo pra cada funcionario. então entre no menu Report -> Sort Records... e la dentro, ordene pela data, dentro do grupo do funcionario.

então, no details, você insere as linhas q você quer normalmente.

ate aqui, ele vai listar os dados q você quer. entretanto, ele vai listar todas as alteracoes e não so as tres ultimas.

então, o q você faz... la no painel da esquerda onde aparecem os nomes das sections, clique com o botao direito na section do details onde estao os dados. e clique na opcao Format Section. na janela q vai abrir, seleciona a opcao Supress (No Drill-Down). do lado dessa opcao deve ter um botao pra edicao da formula. clique nesse botao.

na janela de formula q vai abrir, la em cima, mude para Basic Syntax. ai coloque essa formula:

If {tabela.data_alteracao} = NthLargest (1, {tabela.data_alteracao}, {tabela.codigo_func}) Or _
    {tabela.data_alteracao} = NthLargest (2, {tabela.data_alteracao}, {tabela.codigo_func}) Or _
    {tabela.data_alteracao} = NthLargest (3, {tabela.data_alteracao}, {tabela.codigo_func}) Then
         Formula = False
Else
    Formula = True
End If[/code] e pronto, ele deve mostrar somente as tres alteracoes mais recentes. so lembra de mudar tabela pelo nome da sua tabela. mas ainda tem um problema. se a ultima alteracao do cara aconteceu antes desse mes, ele vai aparecer tb. se você quer saber so os q foram alterados nesse mes, então, o melhor seria você passar por parametro da data do primero dia do mes. exemplo pra maio de 2010, passe 01/05/2010. então, naquele codigo do Supress, você podia alterar pra isso:
[code]If NthLargest (1, {tabela.data_alteracao}, {tabela.codigo_func}) < {?seu_campo_parametro} Then
    Formula = True
Else
    If {tabela.data_alteracao} = NthLargest (1, {tabela.data_alteracao}, {tabela.codigo_func}) Or _
        {tabela.data_alteracao} = NthLargest (2, {tabela.data_alteracao}, {tabela.codigo_func}) Or _
        {tabela.data_alteracao} = NthLargest (3, {tabela.data_alteracao}, {tabela.codigo_func}) Then
             Formula = False
    Else
        Formula = True
    End If
End If

deve ser mais o menos isso, veja ai.

o problema com essa forma é q você não vai poder fazer contagens, com Summary Fields, etc.

mas veja se isso ajuda, qualquer coisa poste ai.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      651.8k
×
×
  • Create New...