Ir para conteúdo
Fórum Script Brasil
  • 0

Exibir mes atual com seus valores montando os proximos meses


dcoder

Pergunta

Bom dia pessoal, eu de novo com outro pepino...

novamente a imagem do meu sistema:

http://img4.imageshack.us/img4/672/imagemif0.jpg

a dúvida é a seguinte, como faço para colocar esses valores para exibir dinamicamente de acordo com o mes corrente ?

Tipo, estamos em fevereiro, acabou fevereiro entre março lá no mes atual e os proximos meses tambem mudam com seus respectivos valores, deu pra sacar ?

não sei se é bem isso que estou iniciando:

Dim mes_atual, mes_2, mes_3, mes_4, mes_5, mes_6, mes_7
mes_atual = MonthName(month(date))
mes_2     = MonthName(month(date)+1)
mes_3     = MonthName(month(date)+2)
mes_4     = MonthName(month(date)+3)
mes_5     = MonthName(month(date)+4)
mes_6     = MonthName(month(date)+5)
mes_7     = MonthName(month(date)+6)

essas variaveis exibem os meses corretamente se eu alterar a data no sistema, mais como fazer isso mudar com os valores ?

travei...

Obrigado pessoal.

Editado por dcoder
Link para o comentário
Compartilhar em outros sites

16 respostass a esta questão

Posts Recomendados

  • 0

Dcoder... tente explicar melhor sua dúvida...

Eu por exemplo não consigo ver suas imagens... e muitos devem etr os mesmos "bloqueios" em seus firewalls...

não entendi direito... explica ai um pouquinho melhor! de preferencia sem usar imagens... só texto mesmo! certamente teremos como lhe ajudar!

abração

Link para o comentário
Compartilhar em outros sites

  • 0

então, tenho um tabela com as colunas item, janeiro, fevereiro, marco e etc..

no meu sistema aprace o item, o mes acima e o total fabricado neste mes, tipo:

item - janeiro

550 - 400pcs

o que preciso é que quando acabar o mes de janeiro entre o mes de fevereiro no lugar com seus valores..

estou tentando assim:

criei as variaveis:

Dim mes_atual, mes_2, mes_3, mes_4, mes_5, mes_6, mes_7
mes_atual = MonthName(month(date))
mes_2     = MonthName(month(date)+1)
mes_3     = MonthName(month(date)+2)
mes_4     = MonthName(month(date)+3)
mes_5     = MonthName(month(date)+4)
mes_6     = MonthName(month(date)+5)
mes_7     = MonthName(month(date)+6)
e depois para a exibição:
<%
If mes_atual<>"mes_2" Then
Response.Write sql("janeiro")
Else If
Response.Write fevereiro("fevereiro")
Else
response.Write marco("marco")
End If
%>

não sei se fui claro, mais é isso ae...

obrigado..

Link para o comentário
Compartilhar em outros sites

  • 0

Bom... pelo que entendi você precisa descobrir dinamicamente que mes é hj e depois usar esse mes para pegar os dados no bd!

Para descobrir que mes é hoje use datepart, assim:

mesatual = datepart ("m", date)
para descobrir os outros use dateadd
mais1 = dateadd ("m", 1, mesatual)
mais2 = dateadd ("m", 2, mesatual)

e assim por diante...

era isso?

Link para o comentário
Compartilhar em outros sites

  • 0

Vixe ,, não vai não...

se eu altero a data do micro pra janeiro o sistema exibe os valores como estao, se eu altero a data para o mes de março, o sistema mostra os valores de janeiro..ta tudo doidao aqui...segue o script:

'consulta sql para exibição dos valores das demandas mensais
set sql = conexao.Execute("select * from TBFIAT")



Dim mes_atual, mes2, mes3, mes4, mes5, mes6, mes7
mes_atual = MonthName(month(date))
mes2     = MonthName(month(date)+1)
mes3     = MonthName(month(date)+2)
mes4     = MonthName(month(date)+3)
mes5     = MonthName(month(date)+4)
mes6     = MonthName(month(date)+5)
mes7     = MonthName(month(date)+6)


Dim mesatual, mais1, mais2, mais3, mais4, mais6, mais7, mais8, mais9, mais10
mesatual = datepart ("m", date)
mais1    = dateadd  ("m", 1, mesatual)
mais2    = dateadd  ("m", 2, mesatual)
mais3    = dateadd  ("m", 3, mesatual) 
mais4    = dateadd  ("m", 4, mesatual)
mais5    = dateadd  ("m", 5, mesatual)
mais6    = dateadd  ("m", 6, mesatual)
mais7    = dateadd  ("m", 7, mesatual)




%>



                <% Response.Write sql("item") %>
              </div></td>
              <td width="104" bgcolor="#96E2CB" class="titulo_menor"><div align="center">
                <%
                If MonthName(month(date)) > "mais1" Then
                Response.Write sql("janeiro")
                Else
                response.Write sql("fevereiro")
                End IF
                %>
              </div></td>
              <td width="93" bgcolor="#F2F2F2" class="titulo_menor"><div align="center">
                <% 
                If MonthName(month(date)) > "mais2" Then
                Response.Write sql("fevereiro") 
                Else
                Response.Write sql("marco")
                End If
                %>
              </div></td>
              <td width="91" bgcolor="#F2F2F2" class="titulo_menor"><div align="center">
                <%
                If MonthName(month(date)) > "mais3" Then
                Response.Write sql("marco")
                Else
                Response.Write sql("abril")
                End If
                %>
              </div></td>
              <td width="94" bgcolor="#F2F2F2" class="titulo_menor"><div align="center">
                <% 
                If MonthName(month(date)) > "mais4" Then
                Response.Write sql("abril")
                Else
                Response.Write sql("maio")
                End If
                %> 
              </div></td>
              <td width="100" bgcolor="#F2F2F2" class="titulo_menor"><div align="center">
                <% 
                If MonthName(month(date)) > "mais5" Then
                Response.Write sql("maio") 
                Else
                Response.Write sql("junho")
                End If
                %>
              </div></td>
              <td width="95" bgcolor="#F2F2F2" class="titulo_menor"><div align="center">
                <% 
                If MonthName(month(date)) > "mais6" Then
                Response.Write sql("junho") 
                Else
                Response.Write sql("julho")
                End If
                %>
              </div></td>
              <td width="102" bgcolor="#F2F2F2" class="titulo_menor"><div align="center">
                <% 
                If MonthName(month(date)) > "mais7" Then
                Response.Write sql("julho") 
                Else
                Response.Write sql("agosto")
                End If
                %>

obrigadooo..

Editado por dcoder
Link para o comentário
Compartilhar em outros sites

  • 0

Bom dia!

Estou fazendo a consulta somente atraves dessa query

set sql = conexao.Execute("select * from TBFIAT")

na minha tabela não tem nenhuma coluna com campos em data, meu pensamento é o seguinte:

se o mes for > que o mes atual ele exibe os valores da coluna do mes atual, se não ele exibe a coluna do proximo mes.

<%
                If MonthName(month(date)) > "mais1" Then
                Response.Write sql("janeiro")
                Else
                response.Write sql("fevereiro")
                End IF
                %>

pode ser meu banco, nele tenho as colunas somente com campos numericos:

item - janeiro - fevereiro - marco - abril - maio - junho - julho

555 200 4545 6565 656 6565 656 656

não era pra mudar só com esse if, exibindo a coluna de janeiro se não a de fevereiro ?

Que rolo..rsrs..obrigado

Link para o comentário
Compartilhar em outros sites

  • 0

Decoder... tem várias coisas muito estranhas na sua lógica... ou eu não entendi direito!

1) para filtrar dados de uma consulta no BD o melhor é você fazer direto na query, com cláusulas de where, conforme citei em posts acima!

2) para filtrar por datas você precisa ter alguma informação no bd que permita isso... um campo data por exemplo facilitaria e muito a sua consulta!

pense em mudar a sua lógica... não tem porque reinventar a roda...

pensa assim:

-ao invés de ter um campo de janeiro outro fevereiro e etc... você cria um único compo de datas...

-na hora de inserir os dados, faça uma rotina e insira a data atual (date) naquele campo!

-depois na hora de consultar você verifica a data atual e filtra uma atraves de uma clausula where usando between (entre) duas datas... no caso seria date (data final) e (dateadd ("m",-3, date) a data inicial!

Verás que dessa forma ficará muito mais fácil!

[]'s

Link para o comentário
Compartilhar em outros sites

  • 0

Ihhh che... nem te estressa com isso!

Olha só... você ta falando de clientes? Filtra... o importante pra eles é ver na tela como está as informações... em baixo disso... o sistema... aquilo que eles não veem faz do seu jeito!

Praticamente tudo é possível... exceto quando da limitação de algum servidor ou coisa do tipo... mas na maioria das soluções faz-se necessária muita criatividade...

toca ferro... tenta da forma como eu te sugeri... se bem entendi é por ali o caminho!

[]'s Rafael Spilki

Link para o comentário
Compartilhar em outros sites

  • 0

hehe, complicado, faz parte do meu estágio sem isso nada de vaga..

Estou reformulando aqui, mais tipo estou encanado com a minha lógica..

assim, não tem como eu fazer uma comparação assim:

<%
                If MonthName(month(date)) > "mais1" Then
                Response.Write sql("fevereiro")
                Else
                response.Write sql("janeiro")
                End IF
                %>

onde : MonthName(month(date)) 'é o mes atual que estamos fevereiro

e: mais1 'que é MonthName(month(date)+1), no caso estaria com o valor de março correto ?

aí ele exibe pra mim todos os resultados da coluna fevereiro se MonthName(month(date)) for maior que MonthName(month(date)+1)

ou a de janeiro se não for..

[]'s

Link para o comentário
Compartilhar em outros sites

  • 0

mas o que é isso:

response.Write sql("janeiro")
??? isso não funciona! uma query com "filtro" tem essa sintaxe aqui:
sql = "select * from sua_tabela where campo_bd = '"&vairiavel&"' "
Quer filtrar pelo nome do campo do bd... faça assim:
'aqui você abre o bd:
Set conexao= server.createObject("ADODB.Connection")
conexao.CursorLocation = 3
conexao.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("bd.mdb")
'query
sql = "select * from sua_tabela "
'aqui você seta o objeto recordset
Set rs= Server.CreateObject( "ADODB.RecordSet" )
rs.Open sql, conexao

'aqui você imprime os dados que tem no campo do bd
response.write rs("campo_bd")

agora a questão é: quais campos imprimir?!? esse é o grande x da questão...

Acho que da forma que você está fazendo o trabalho será três vezes maior para conseguir condicionar os campos a serem impressos... sacou o porque?

Link para o comentário
Compartilhar em outros sites

  • 0

isso cara, imprimir os dados da coluna, não consigo fazer isso tomando decisoes ?

'aqui você abre o bd:
Set conexao= server.createObject("ADODB.Connection")
conexao.CursorLocation = 3
conexao.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("bd.mdb")
'query
sql = "select * from sua_tabela "
'aqui você seta o objeto recordset
Set rs= Server.CreateObject( "ADODB.RecordSet" )
rs.Open sql, conexao

'aqui você imprime os dados que tem no campo do bd
<% 
If MonthName(month(date)+3) > "mais2" Then
Response.Write sql("fevereiro") 
Else
Response.Write sql("marco")
End If
%>

fiz isso aqui e funcionou porém quando altero a data do micro para o mes seguinte ele retorna a imprimir os campos anteriores...

o papo ta ficando bom em...hehe...

[]'s

Link para o comentário
Compartilhar em outros sites

  • 0
isso cara, imprimir os dados da coluna, não consigo fazer isso tomando decisoes ?
não entendi... como assim decisões?

<%

If MonthName(month(date)+3) > "mais2" Then

Response.Write sql("fevereiro")

Else

Response.Write sql("marco")

End If

%>

isso não existe...

fiz isso aqui e funcionou porém quando altero a data do micro para o mes seguinte ele retorna a imprimir os campos anteriores

como está seu código agora? posta como ele funcionou com o primeiro mes!

[]'s Rafael Spilki

Link para o comentário
Compartilhar em outros sites

  • 0

Bom dia !!!

desculpe a demora para postar, estavamos sem link...

segue o codigo:

<%

Set conexao = Server.CreateObject("ADODB.Connection")
conexao.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("../dados/geral.mdb")




'consulta sql para exibição dos valores das demandas mensais
set sql = conexao.Execute("select * from TBFIAT")





Dim mes_atual, mes, mes1, mes2, mes3, mes4, mes5, mes6, mes7, mes8, mes9, mes10, mes11, mes12
mes       = MonthName(month(date)-1)
mes1      = MonthName(month(date))
mes2      = MonthName(month(date)+1)
mes3      = MonthName(month(date)+2)
mes4      = MonthName(month(date)+3)
mes5      = MonthName(month(date)+4)
mes6      = MonthName(month(date)+5)
mes7      = MonthName(month(date)+6)


Dim mesant, mais1, mais2, mais3, mais4, mais6, mais7, mais8, mais9, mais10, mais11, mais12
mais1      = datepart  ("m", date)
mais2      = dateadd   ("m", 1, mesatual)
mais3      = dateadd   ("m", 2, mesatual)
mais4      = dateadd   ("m", 3, mesatual)
mais5      = dateadd   ("m", 4, mesatual) 
mais6      = dateadd   ("m", 5, mesatual)
mais7      = dateadd   ("m", 6, mesatual)


%>




            
            
                <td width="104" bgcolor="#D7F4EB" class="style3"><div align="center"><strong>Item</strong></div></td>
                <td width="101" bgcolor="#96E2CB" class="style3"><div align="center"><%=mesant%></div></td>
                <td width="95" bgcolor="#F2F2F2" class="style3"><div align="center"><%=janeiro%></div></td>
                <td width="88" bgcolor="#F2F2F2" class="style3"><div align="center"><%=fevereiro%></div></td>
                <td width="95" bgcolor="#F2F2F2" class="style3"><div align="center"><%=marco%></div></td>
                <td width="97" bgcolor="#F2F2F2" class="style3"><div align="center"><%=abril%></div></td>
                <td width="94" bgcolor="#F2F2F2" class="style3"><div align="center"><%=maio%></div></td>
                <td width="100" bgcolor="#F2F2F2" class="style3"><div align="center"><%=junho%></div></td>
              

<%
Do Until sql.EOF 
%>
        
    <table width="1500" border="0" cellspacing="2" cellpadding="0">
            <tr>
              <td width="106" bgcolor="#D7F4EB" class="titulo_menor"> <div align="center">
                <% Response.Write sql("item") %>
              </div></td>
              <td width="104" bgcolor="#96E2CB" class="titulo_menor"><div align="center">
                <%
                If MonthName(month(date)) > "mais1" Then
                Response.Write sql("janeiro")
                Else
                Response.Write sql("fevereiro")
                End IF
                %>
              </div></td>
              <td width="93" bgcolor="#F2F2F2" class="titulo_menor"><div align="center">
                <% 
                If MonthName(month(date)) > "mais2" Then
                Response.Write sql("fevereiro") 
                Else
                Response.Write sql("marco")
                End If
                %>
              </div></td>
              <td width="91" bgcolor="#F2F2F2" class="titulo_menor"><div align="center">
                <%
                If MonthName(month(date)) > "mais3" Then
                Response.Write sql("marco")
                Else
                Response.Write sql("abril")
                End If
                %>
              </div></td>
              <td width="94" bgcolor="#F2F2F2" class="titulo_menor"><div align="center">
                <% 
                If MonthName(month(date)) > "mais4" Then
                Response.Write sql("abril")
                Else
                Response.Write sql("maio")
                End If
                %> 
              </div></td>
              <td width="100" bgcolor="#F2F2F2" class="titulo_menor"><div align="center">
                <% 
                If MonthName(month(date)) > "mais5" Then
                Response.Write sql("maio") 
                Else
                Response.Write sql("junho")
                End If
                %>
              </div></td>
              <td width="95" bgcolor="#F2F2F2" class="titulo_menor"><div align="center">
                <% 
                If MonthName(month(date)) > "mais6" Then
                Response.Write sql("junho") 
                Else
                Response.Write sql("julho")
                End If
                %>
              </div></td>
              <td width="102" bgcolor="#F2F2F2" class="titulo_menor"><div align="center">
                <% 
                If MonthName(month(date)) > "mais7" Then
                Response.Write sql("julho") 
                Else
                Response.Write sql("agosto")
                End If
                %>
              </div></td>
              <td width="106" bgcolor="#D7F4EB" class="titulo_menor"><div align="center">
                <% Response.Write media("fevereiro") %>
               
              </div></td>
              
<%
sql.MoveNext
Loop
%>

ranquei um pouco dos html ae ok...

[]'s

Editado por dcoder
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...