package sqlclasses;

import java.io.*;
import java.util.*;
import java.sql.*;
import java.text.*;
import java.lang.*;
import sqlclasses.*;



public class Projecao_parametro extends SQLConexao
{

	

	public Projecao_parametro() throws SQLException, ClassNotFoundException
	{
		super("nome_banco","tabela");

	}


	public void executeQuery(String param1) throws SQLException
	{
	
    	String sql="SELECT periodo, risco_tx_juros, risco_tx_rv, tx_juros, tx_rv, referencial_inflacao, referencial_dolar, rentab_acumul_tx_juros, rentab_acumul_tx_rv, retor_anualiz_tx_juros, retor_anualiz_tx_rv, retor_deflac_tx_juros, retor_deflac_tx_rv, rentab_acumul_deflac_tx_juros, rentab_acumul_deflac_tx_rv, retor_anualiz_deflac_tx_juros, retor_anualiz_deflac_tx_rv, retor_dolar_tx_juros, retor_dolar_tx_rv, rentab_acumul_dolar_tx_juros, rentab_acumul_dolar_tx_rv, retor_anualiz_dolar_tx_juros, retor_anualiz_dolar_tx_rv FROM "+tabela+" WHERE periodo=" + param1;		
		
	    result = statement.executeQuery( sql );
	  	   
		result.next();
	}




	public String getList(String parametro) throws SQLException
	{

//**************** variaveis de resposta ****************************
		String Rperiodo = "";
		String Rtx_jr = "";
		String Rtx_rv = "";
		String R_inflacao = "";
		
//********************************************************************
		
		String sql="SELECT periodo, tx_juros, tx_rv, referencial_inflacao FROM "+tabela+" ORDER BY periodo";
		result = statement.executeQuery( sql );
		
		while(result.next())
		{

			float Fperiodo = result.getFloat("periodo");
			String tx_juros = result.getString(2);
			String tx_rv = result.getString(3);
			String tx_inf = result.getString(4);
					
/***********************************************************************
		condição para não formatar o 0.5
***********************************************************************/			
			if (Fperiodo == 0.5)
			{
				Rperiodo += Fperiodo+";";
			}
			else
			{
				DecimalFormat formatar_periodo = new DecimalFormat("#######");			
				Rperiodo += formatar_periodo.format(Fperiodo) + ";";
			}
			
/***********************************************************************
	Para confirmar se existe campo sem preenchimento (null)	
***********************************************************************/			

		 	if (tx_juros != null)
			{		
				float Ftx_juros =(Float.valueOf(tx_juros).floatValue())*100;			
				Rtx_jr += Ftx_juros + ";";
			}
			

			if (tx_rv != null)
			{
				float Ftx_rv = (Float.valueOf(tx_rv).floatValue())*100;
				Rtx_rv += Ftx_rv + ";";
			}


			if (tx_inf != null)
			{
				float F_tx_inf = (Float.valueOf(tx_inf).floatValue())*100;
				R_inflacao += F_tx_inf + ";";

			}
			

		}    // fim while
		
		
//********************** escolha da resposta ***************************
				
		if (parametro.equals("periodo"))
		{
			parametro = Rperiodo;
		}
		else if (parametro.equals("tx_juros"))
			{
				parametro = Rtx_jr;
			}
			else if (parametro.equals("tx_rv"))
			{
				parametro = Rtx_rv;
			}
			else if (parametro.equals("referencial_inflacao"))
			{
			  parametro = R_inflacao;
			}
			
	
			return parametro;		
			
	}

	
}


/*
******************** campos da tabela ****************************

periodo, tx_juros, tx_rv, referencial_inflacao, referencial_dolar, rentab_acumul_tx_juros                                rentab_acumul_tx_rv                                   retor_anualiz_tx_juros                                retor_anualiz_tx_rv                                   risco_tx_juros                                        risco_tx_rv                                           retor_deflac_tx_juros                                 retor_deflac_tx_rv                                    rentab_acumul_deflac_tx_juros                         rentab_acumul_deflac_tx_rv                            retor_anualiz_deflac_tx_juros                         retor_anualiz_deflac_tx_rv, retor_dolar_tx_juros, retor_dolar_tx_rv, rentab_acumul_dolar_tx_juros, rentab_acumul_dolar_tx_rv, retor_anualiz_dolar_tx_juros, retor_anualiz_dolar_tx_rv            

*/
