Key lookup to Index Seek 01

 

SELECT SUM( PD.dblCargo – PD.dblAbono)  FROM tbFacturaEncXPagarSolicitudCheque FS, tbPolizaEnc PE, tbPolizaDet PD, tbImpuesto I WHERE FS.intFacturaEncXPagar=61371 AND PE.intPolizaEnc=FS.intPolizaEnc AND PD.intPolizaEnc=PE.intPolizaEnc AND I.intCuentaContable=PD.intCuentaContable AND I.intFolio=3

01

CREATE  NONCLUSTERED INDEX tbPolizaDet_Index02 ON [dbo].[tbPolizaDet] (intPolizaEnc) INCLUDE (intCuentaContable,dblCargo, dblAbono)GO

 

 

Advertisements

Crear Servicios Web y consumirlos sin Referenciarlos

Este proceso es factible cuando requerimos utilizar herramientas con un framework superior a 2.0.

Lo primero es crear un Servicio Web (Web Service) y crear un metodo que acepte httpGet en nuestro proyecto web con framework 3.5 o superior.

[WebMethod]
[ScriptMethod(UseHttpGet = true)]
public bool MetodoWeb
{
//Aqui va tu codigo
}

Se tiene que asegurar que exista el siguiente Nodo en el archivo Web.Config

 

Ahora si, dentro de nuestro codigo de Framework 2.0, en donde especificamos la ruta de nuestro Servicio Web, el nombre del metodo y los parametros que le vamos a enviar.

string wsRuta = string.Empty;
string wsServicio = string.Empty;
string wsMetodo = string.Empty;

wsRuta = “http:/localhost:8023”;
wsServicio = “ServicioWeb.asmx”;
wsMetodo = “MetodoWeb”;
string hola = string.Format(“{0}/{1}/{2}”, wsRuta, wsServicio, wsMetodo);
var request = (HttpWebRequest)WebRequest.Create(string.Format(“{0}/{1}/{2}”, wsRuta, wsServicio, wsMetodo));

StringBuilder sbs = new StringBuilder();
sbs.Append(string.Format(“{0}={1}”, “Parametro1”, “Valor1”));
sbs.Append(string.Format(“&{0}={1}”, “Paramtero2”, “Valor2”));
var data = Encoding.ASCII.GetBytes(sbs.ToString());

request.Method = “POST”;
request.ContentType = “application/x-www-form-urlencoded”;
request.ContentLength = data.Length;

using (var stream = request.GetRequestStream())
{
stream.Write(data, 0, data.Length);
}
try
{
var response = (HttpWebResponse)request.GetResponse();

var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
}
catch (WebException wex)
{
StringBuilder sb = new StringBuilder();
sb.AppendLine(“ERROR:” + wex.Message + “. STATUS: ” + wex.Status.ToString());

if (wex.Status == WebExceptionStatus.ProtocolError)
{
var response = ((HttpWebResponse)wex.Response);
sb.AppendLine(string.Format(“Status Code : {0}”, response.StatusCode));
sb.AppendLine(string.Format(“Status Description : {0}”, response.StatusDescription));

try
{
StreamReader reader = new StreamReader(response.GetResponseStream());
sb.AppendLine(reader.ReadToEnd());
}
catch (WebException ex) { throw; }
}

throw new Exception(sb.ToString(), wex);
}

Cuando se detecta algun problema en el codigo, el sistema regresa por default un error 500, por lo cual se agrego el Catch de “WebException “, en donde se despliega de manera mas entendible el error y poder atacarlo mas efectivamente.

Con esto, no tuvimos que agregar la referencia web en nuestro proyecto y pudimos consumir el Web Service por un POST.

-MrDonPh0x

hqdefault

Aumentar Paquete en CPanel

Como poder aumentar un paquete de datos en un dominio específico dentro del Cpanel

  1. Ingresamos a la liga de whm con tu usuario y contraseña.
  2. En funciones de la cuenta, buscamos el Package al que pertenece el dominio al que le aumentará el paquete.
  3. Damos click en Paquete>Editar un paquete, seleccionamos el paquete al que pertenece el dominio y dar click en editar .
  4. Por último se captura el monto de incremento para el paquete.

 

  • We enter the league  whm with your user and password
  • Click in functions of the account, we look for the package to which the domain belongs the domain to which we will increase the quota.
  • We click on Package> Edit a package, select the package to which the domain belongs and click on edit.
  • Finally the amount of increase for the package is captured.