jueves, 24 de mayo de 2012

For dynamic Database connection Crystal Reports


Database connection Crystal Reports doesn´t works!!!
            crConnectionInfo.ServerName = "YOUR SERVER NAME";
            crConnectionInfo.DatabaseName = "YOUR DATABASE NAME";
            crConnectionInfo.UserID = "YOUR DATABASE USERNAME";
            crConnectionInfo.Password = "YOUR DATABASE PASSWORD";

            CrTables = cryRpt.Database.Tables ;
            foreach (CrystalDecisions.CrystalReports.Engine.Table CrTable in CrTables)
            {
                crtableLogoninfo = CrTable.LogOnInfo;
                crtableLogoninfo.ConnectionInfo = crConnectionInfo;
                CrTable.ApplyLogOnInfo(crtableLogoninfo);
            }
but this Works fine!
foreach (Table crTable in objRpt.Database.Tables)
            {
                TableLogOnInfo logOnInfo = new TableLogOnInfo();
                logOnInfo = objRpt.Database.Tables[crTable.Name].LogOnInfo;
 
                // Set the connection information for the table in the report.
                logOnInfo.ConnectionInfo.ServerName = server.Trim();
                logOnInfo.ConnectionInfo.DatabaseName = database.Trim();
                logOnInfo.ConnectionInfo.UserID = username;
                logOnInfo.ConnectionInfo.Password = password;
                objRpt.Database.Tables[crTable.Name].ApplyLogOnInfo(logOnInfo);
}

miércoles, 23 de mayo de 2012

Send email with c#


 private void sendEmail()
        {
            //Declarando Variables
            try
            {
                string From;
                string To;
                string Message;
                string Subject;
                System.Net.Mail.MailMessage Email;

                //Aplicando los campos a cada variable

                From = ;/*correo origen*/
                To = ;/*correo destinatario*/
                Message = ;/*Mensaje*/;
                Subject =;/*Asunto*/
                //Establesco El Email

                Email = new System.Net.Mail.MailMessage(From, To, Subject, Message);
                System.Net.Mail.SmtpClient smtpMail = new System.Net.Mail.SmtpClient("smtp.gmail.com");
                Email.IsBodyHtml = false;
                System.Net.Mail.Attachment attachment;
                txtattach.Text = "";/*File Path*/;
                attachment = new System.Net.Mail.Attachment(txtattach.Text.Trim());
                Email.Attachments.Add(attachment);
                smtpMail.EnableSsl = true;
                smtpMail.UseDefaultCredentials = false;
                smtpMail.Port = 25;
                smtpMail.Credentials = new System.Net.NetworkCredential(/*USER*/,/*PASS*/);
                //smtpMail.ClientCertificates.
                ServicePointManager.ServerCertificateValidationCallback =
                delegate(object s, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)

                { return true; };
                smtpMail.Send(Email);
                attachment.Dispose();
             
                MessageBox.Show("enviado con exito");
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message.ToString());
            }
        }

sábado, 11 de febrero de 2012

Validación de RFC , CRM



function validaRFC(cual)
{
mensaje = "Debes poner un formato LLLL-999999-XXX"
pat = /[a-z]|[A-Z]/
pat2 = /[a-z]|[A-Z]|[0-9]/
val = cual.split("-")
if (val.length == 3){
if(val[0].length == 4){
if(!comp(val[0],pat)){
alert( mensaje)
return false
}
}
if(val[1].length == 6){
if(isNaN(val[1])){
alert('no es un numero')
return false
}
}
if(val[2].length == 3){
if(!comp(val[2],pat2)){
alert(mensaje)
return false
}
}
else{
alert(mensaje)
return false
}
}
else{
alert(mensaje)
return false
}
return true
}


function comp(cual,pa){
for ( m = 0 ; m < cual.length ; m++ ) {
if(!pa.test(cual.charAt(m))){
return false
break
}
}
return true
}

domingo, 29 de enero de 2012

Read txt file with c#


 public ArrayList ReadtxtFile(string txtPath)
        {
            StreamReader objReader = new StreamReader(txtPath);
            string sLine = "";
            ArrayList arrText = new ArrayList();

            while (sLine != null)
            {
                sLine = objReader.ReadLine();
                if (sLine != null)
                {
                    if (sLine != "")
                        arrText.Add(sLine);
                }
            }
            objReader.Close();
            return arrText;

        }

fill a Data table dynamically with the results of Xml query


Here you can fill a Data table dynamically with the results of Xml query (Prev. Post)
var dtRowsElements = objData.SelectAllfromTable(ElementTable);
IEnumerable dtRows = (IEnumerable)dtRowsElements;
DataTable objDTable = objData.FillDataTable(dtRows);

/*Function to create the Data Table.*/


 public DataTable FillDataTable(IEnumerable dtRows)
        {
            /*Crea Datatable a partir de lo que Elementos obtenidos de dtRows "Consulta XML que es un IEnumerable"*/
            DataTable dtDescrValue = new DataTable();
            try
            {

                foreach (XElement dtColumn in dtRows.First().Elements())
                {
                    //Crea Columnas
                    dtDescrValue.Columns.Add(dtColumn.Name.ToString(), typeof(string));
                }

                foreach (XElement dtRow in dtRows)
                {
                    //Crea cada registro "Row"
                    DataRow dtDescrRow = dtDescrValue.NewRow();
                    foreach (XElement dtColumn in dtRows.First().Elements())
                    { //Asigna valores de cada column de "Row"
                        dtDescrRow[dtColumn.Name.ToString()] = dtRow.Element(dtColumn.Name.ToString()).Value;
                    }
                    dtDescrValue.Rows.Add(dtDescrRow);
                }

            }
            catch (Exception e)
            {//En caso de Error regresa un Data table con Id: "Error", Descr: Message de error.
                dtDescrValue.Columns.Add("Descr", typeof(string));
                dtDescrValue.Columns.Add("Id", typeof(string));

                DataRow dtDescrRow = dtDescrValue.NewRow();
                dtDescrRow["Descr"] = e.Message;//"No data...";
                dtDescrRow["Id"] = "Error";
                dtDescrValue.Rows.Add(dtDescrRow);
            }
            return dtDescrValue;
        }

XML Query whit Linq C#


Whit this lines you can get all elements from "Task"
string ElementTable = "Task";

 var dtRowsElements = objData.SelectAllfromTable(ElementTable);
IEnumerable dtRows = (IEnumerable)dtRowsElements;


/*Function*/
public IEnumerable SelectAllfromTable(string Table)
        { /*Selecciona Todos los campos de la tabla en el .XML*/
            string DBFile = string.Empty;
            DBFile = "DB\\TrackTimeDB.xml";
            try
            {
                XElement TracktTimeDB = XElement.Load(DBFile);

                var AllData = from c in TracktTimeDB.Descendants(Table)
                              select c;
                return AllData;
            }
            catch (Exception er)
            {
                return null;
            }
        }


 

martes, 17 de enero de 2012

HTML CSS XML JAVASCRIPT ASP PHP SQL MORE...

Sin duda este es un buen sitio donde puedes encontrar todo para aprender y certificarte de manera rápida y sencilla. 


Todo depende de ti realmente. 

saludos.