![Antiguo](http://static.forosdelweb.com/fdwtheme/images/statusicon/post_old.gif)
20/12/2007, 06:43
|
| | Fecha de Ingreso: noviembre-2007
Mensajes: 15
Antigüedad: 17 años, 2 meses Puntos: 0 | |
Error extraño. Va en local, pero no en el servidor ¿¿?? Buenos días.
Estoy con una web de estadísticas en ASP.NET y aparentemente funciona OK porque me muestra los datos que quiero.
El caso es que lo subo al servidor y...una parte no funciona. Y yo no lo entiendo, pues la consulta es correcta, lo busca correctamente, pero...en mi máquina, porque en el servidor no hace nada ![enojado](http://static.forosdelweb.com/fdwtheme/images/smilies/enojado.png) .
Así que mosqueante el caso es. El caso que la consulta sí es correcta, por lo que el fallo tiene pinta de estar en el código y ahora mismo no caigo cuál puede ser el fallo ![Serio](http://static.forosdelweb.com/fdwtheme/images/smilies/molesto.png) .
Os dejo el código para que le echéis un ojo:
Código:
protected static bool entra;
protected string[] ciertoEntra = new string[20];
protected string[] ciertoEntraNodo = new string[20];
protected string[] ciertoEntraNode = new string[20];
protected int indiceEntra=0;
protected int indiceEntraNodo=0;
protected int indiceEntraNode=0;
protected static bool entraNodo;
protected static bool entraNode;
public string SacaNoticiaCof(string dato)
{
int total=0;
string datos="";
entra=false;
string sql="select b.title from estadisticas_agregado a, channels b where a.web = b.keymultiweb and b.idchannel="+dato;
DataSet objDataSet = DataHelper.ExecuteDataset(this.strConnectionString,CommandType.Text,sql);
if ( objDataSet != null )
{
if ( objDataSet.Tables.Count > 0 )
{
if ( objDataSet.Tables[0].Rows.Count > 0 )
{
entra=true;
total=objDataSet.Tables[0].Rows.Count;
dataLabel = new string[total];
foreach ( DataRow objDataRow in objDataSet.Tables[0].Rows )
{
if (entra==true)
{
datos = objDataRow["title"].ToString();
}
}
}
}
}
else
{
datos="";
}
ciertoEntra[indiceEntra]=entra.ToString();
indiceEntra++;
return (datos);
}
public string SacaBoletinesCof(string dato)
{
int total=0;
string datos="";
entraNode=false;
string sql="select title from channels where idchannel="+dato;
DataSet objDataSet = DataHelper.ExecuteDataset(this.strConnectionString,CommandType.Text,sql);
if ( objDataSet != null )
{
if ( objDataSet.Tables.Count > 0 )
{
if ( objDataSet.Tables[0].Rows.Count > 0 )
{
entraNode=true;
total=objDataSet.Tables[0].Rows.Count;
dataNodo = new string[total];
foreach ( DataRow objDataRow in objDataSet.Tables[0].Rows )
{
if (entraNode==true)
{
datos = objDataRow["title"].ToString();
}
}
}
}
}
else
{
datos="";
}
ciertoEntraNode[indiceEntraNode]=entraNode.ToString();
indiceEntraNode++;
return (datos);
}
public virtual string RenderListInterna( string sql,
string[] dataTypes,
int[] indexes,
bool group,
bool showTotal,
int keyMultiweb,
RenderDelegate dlgRenderHeader )
{
string dato="";
string datocolumna="";
string datonodo="";
string datonode="";
int[] totals = new int[indexes.Length]; //por defecto, serán 0
DataSet objDataSet = DataHelper.ExecuteDataset(this.strConnectionString,CommandType.Text,sql);
if ( objDataSet != null )
{
if ( objDataSet.Tables.Count > 0 )
{
if ( objDataSet.Tables[0].Rows.Count > 0 )
{
int idx = 0;
foreach ( DataRow objDataRow in objDataSet.Tables[0].Rows )
{
for ( int i = 1; i <= dataTypes.Length-1; i++ )
{
if (i==dataTypes.Length-4)
{
dato=this.GetDataValue(objDataRow, indexes[i], dataTypes[i], keyMultiweb);
datocolumna=this.SacaNoticiaCof(dato);
}
}
}
foreach ( DataRow objDataRow in objDataSet.Tables[0].Rows )
{
for ( int i = 1; i <= dataTypes.Length-1; i++ )
{
if (i==dataTypes.Length-1)
{
dato=this.GetDataValue(objDataRow, indexes[i], dataTypes[i], keyMultiweb);
datonode=this.SacaBoletinesCof(dato);
}
}
}
....
for ( int i = 1; i <= dataTypes.Length-1; i++ )
{
b.Append("<td class=\"row" + letter + "\" ");
if (i==dataTypes.Length-4)
{
if ((String.Equals(ciertoEntra[0],"True")==true) || (String.Equals(ciertoEntra[0],"true")==true))
{
b.Append("title='");
b.Append(datocolumna);
b.Append("' ");
f++;
}
}
if (i==dataTypes.Length-3)
{
if ((String.Equals(ciertoEntraNodo[0],"True")==true) || (String.Equals(ciertoEntraNodo[0],"true")==true))
{
b.Append("title='");
b.Append(datonodo);
b.Append("' ");
g++;
}
}
if (i==dataTypes.Length-1)
{
if ((String.Equals(ciertoEntraNode[0],"True")==true) || (String.Equals(ciertoEntraNode[0],"true")==true))
{
b.Append("title='");
b.Append(datonode);
b.Append("' ");
o++;
}
}
}
// Aquí el otro procedimiento
public virtual string RenderListInterna1( string sql,
string[] dataTypes,
int[] indexes,
bool group,
bool showTotal,
int keyMultiweb,
RenderDelegate dlgRenderHeader )
{
StringBuilder b = new StringBuilder();
//preparo los totales, si es necesario
int[] totals = new int[indexes.Length]; //por defecto, serán 0
string dato="";
string datocolumna="";
string datocol="";
string datonodo="";
string[] DatosSacados;
string[] DatosExtraidos;
string[] DatosSalidos;
string[] EntraCierto;
string[] EntraNodoCierto;
string[] EntraNodeCierto;
int total=0;
int f = 0;
int g = 0;
int j = 0;
int h = 0;
int o = 0;
int r = 0;
int indicePrimero=0;
int indiceSegundo=0;
int indiceTercero=0;
DataSet objDataSet = DataHelper.ExecuteDataset(this.strConnectionString,CommandType.Text,sql);
if ( objDataSet != null )
{
if ( objDataSet.Tables.Count > 0 )
{
if ( objDataSet.Tables[0].Rows.Count > 0 )
{
total=objDataSet.Tables[0].Rows.Count;
DatosSacados=new string[total];
DatosExtraidos=new string[total];
DatosSalidos=new string[total];
EntraCierto=new string[total];
EntraNodoCierto=new string[total];
EntraNodeCierto=new string[total];
foreach ( DataRow objDataRow in objDataSet.Tables[0].Rows )
{
for ( int i = 1; i <= dataTypes.Length-1; i++ )
{
if (i==dataTypes.Length-4)
{
dato=this.GetDataValue(objDataRow, indexes[i], dataTypes[i], keyMultiweb);
datocolumna=this.SacaNoticiaCof(dato);
DatosSacados[f]=datocolumna;
f++;
}
}
}
foreach ( DataRow objDataRow in objDataSet.Tables[0].Rows )
{
for ( int i = 1; i <= dataTypes.Length-1; i++ )
{
if (i==dataTypes.Length-1)
{
dato=this.GetDataValue(objDataRow, indexes[i], dataTypes[i], keyMultiweb);
datocol=this.SacaBoletinesCof(dato);
DatosSalidos[o]=datocol;
o++;
}
}
}
for (int l=1;l<EntraCierto.Length;l++)
{
if ((String.Equals(ciertoEntra[l],"")!=true) || (String.Equals(ciertoEntra[l],null)!=true))
{
EntraCierto[l-1]=ciertoEntra[l];
}
}
for (int l=1;l<EntraNodoCierto.Length;l++)
{
if ((String.Equals(ciertoEntraNodo[l],"")!=true) || (String.Equals(ciertoEntraNodo[l],null)!=true))
{
EntraNodoCierto[l-1]=ciertoEntraNodo[l];
}
}
for (int l=1;l<EntraNodeCierto.Length;l++)
{
if ((String.Equals(ciertoEntraNode[l],"")!=true) || (String.Equals(ciertoEntraNode[l],null)!=true))
{
EntraNodeCierto[l-1]=ciertoEntraNode[l];
}
}
int idx = 1;
foreach ( DataRow objDataRow in objDataSet.Tables[0].Rows )
{
int contador=0;
string letter = idx % 2 == 0 ? "B" : "A";
b.Append("<tr class=\"tbrs\">\n");
b.Append(" <td class=\"tbrshead\">"+this.GetDataValue(objDataRow, indexes[0], dataTypes[0], keyMultiweb)+"</td>\n");
for ( int i =1; i <= dataTypes.Length-1; i++ )
{
b.Append("<td class=\"row" + letter + "\" ");
if (i==dataTypes.Length-4)
{
if ((String.Equals(EntraCierto[indicePrimero],"True")==true) || (String.Equals(EntraCierto[indicePrimero],"true")==true))
//if (entra==true)
{
b.Append("title='");
b.Append(DatosSacados[indicePrimero]);
b.Append("' ");
j++;
}
indicePrimero++;
}
if (i==dataTypes.Length-3)
{
if ((String.Equals(EntraNodoCierto[indiceSegundo],"True")==true) || (String.Equals(EntraNodoCierto[indiceSegundo],"true")==true))
//if (entraNodo==true)
{
b.Append("title='");
b.Append(DatosExtraidos[indiceSegundo]);
b.Append("' ");
h++;
}
indiceSegundo++;
}
if (i==dataTypes.Length-1)
{
if ((String.Equals(EntraNodeCierto[indiceTercero],"True")==true) || (String.Equals(EntraNodeCierto[indiceTercero],"true")==true))
//if (entraNode==true)
{
b.Append("title='");
b.Append(DatosSalidos[indiceTercero]);
b.Append("' ");
r++;
}
indiceTercero++;
}
}
Yo ya no sé qué puede ser. Si encontráis algo, os lo agradeceré, porque realmente ya no sé qué puede ser...
Muchas gracias y un saludo. |