|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - javierkcjm
1
« en: Martes 5 de Abril de 2011, 18:44 »
Amigo,
seria bueno que postearas el codigo, ya que si llamas el metodo de dbujar el control en el load del formulario deberia funcionar segurmante algo estas obviando
Saludos
2
« en: Lunes 13 de Diciembre de 2010, 20:49 »
Amigo gracias por tu respuesta, pero bueno no se si me di a entender pero lo que quiero es que el formulario este duplicado en otra ventana, lo resolvi creando una nueva instancia del contro y pasando las clases y objetos compartidos, pero bueno lo que queria hacer era usar el metodo this.MemberwiseClone(); ya que crea una copia superficial de la clase!! pero al mostrar los dos formularios se me cae ya que como es una copìa superficial debe mostrar dos objetos en distintos sitios , supongo yo por eso es el problema!!!
3
« en: Lunes 13 de Diciembre de 2010, 20:46 »
Probastes poniendo solo el nombre del server sin la instancia
data source=mipc
saludos,
consejo: revisa la configuracion de instancia de tu sql, ya que si as actualizado la version pobrablemente no haya instalado una instancia visible
4
« en: Jueves 2 de Diciembre de 2010, 17:27 »
Estimados,
Estoy desarrollando una aplicacion en la cual uso controles de usuarios, bueno lo que quiero hacer es clonar un control de usuario que se muestra en un Form y mostrarlo en otro Form , pero quiero hacerle una clonacion superficial ya que dentro del control tengo otras clases y variables por referencia que quiero copiar. uso el metodo MemberwiseClone() para hacer la "Shallow Copy", el problema es que cuando muestro el segundo formulario se me queda en blanco como tonteando. esto es lo que hago
IClasePadre Clase = new GTSOLICITANTE(); // aqui instancio el control de usuario //iclasepadre es una interfaz this.Controls.Add(Clase.Control);//agrego el contrlol de la clase a los controles del formulario IClasePadre Clase2 =(IClasePadre) Clase.Clone(); //creo el clone de la clase() Form Fr = new Form(); //creo el formulario Fr.Controls.Add(Clase2.Control);// agrego el contrl de la clase clon a los controles del nuevo formularios Fr.Refresh(); //refresco Fr.Show(); // y muestro pero aqui el formulario se bloquea y se hace una especie de bug donde tengo que para la ejecucion
quisiera saber que puede estar pasando, tengo ciertas hipotesis, bueno una de un amigo que desarrolla conmigo el proyecto dice que esta mal implementado el Clone(), pero si realiza el clon cuando yo muestro el control de la Clase clonada en l formulario original sin crear un nuevo si lo muestra pero cuando intento mostrar los dos controles en formularios distintos no los muestra... mi hipotesis seria que el visual genera una excepcion cuando trato de mostrar 2 controles que hacen referencia al mismo sitio de memoria , no se la verdad. espero me puedan ayudar
Saludos Coriales
5
« en: Miércoles 28 de Julio de 2010, 23:15 »
amigo, al principio del post esta el error que se me genero, el problema era que no habia definido la estructura sql que retorna mi dll y la cual usara el sql server para consumir el servicio ya lo resolvi e igualmente lo subi a mi blog todos los pasos para poder consumir el web service desde el SQL SERVER http://javierkcjm.wordpress.com/2010/07/20/consumir-un-servicio-web-mediante-sql-server-2005/saludos , espero les sirva esta guia
6
« en: Martes 20 de Julio de 2010, 00:33 »
Estimados, tengo un problemilla, necesito integrar bases de datos que estan a km de distancia, opte por la solucion de crear un web service para que me retorne un conjunto de datos, ahora lo que pretendo hacer es consumir el WS desde el SQL, he visitado varias paginas, he realizado el WS , el proyecto SQL SERVER en .Net 2005 para crear la dll he creado el ensambaldo pero cuando voy a crear el procedimien to que llame al metodo del ensamblador me genera el siguiente error
"An error occurred while gathering metadata from assembly 'SqlServerProject2' with HRESULT 0x80004005."
este es el codigo del proyecto del SQL en .NET 2005, cree un procedimiento, este es el codigo
using System.Data; using Microsoft.SqlServer.Server; public partial class StoredProcedures { [Microsoft.SqlServer.Server.SqlProcedure] public static DataSet RetoraP() { DataSet dt = new DataSet(); SqlServerProject2.PersonasWS.ServicioCatastro WA = new SqlServerProject2.PersonasWS.ServicioCatastro(); //SERVICIO WEB dt = WA.PersonasBorrar(); return dt;
// Put your code here } };
Estas son las lineas que corro en el SQL SERVER para crear el ensamblador
CREATE ASSEMBLY SqlServerProject2 FROM 'C:Documents and SettingsjcedenoMis documentosVisual Studio 2005ProjectsSqlServerProject2SqlServerProject2objDebugSqlServerProject2.dll' WITH PERMISSION_SET = External_Access; GO
CREATE ASSEMBLY MyXmlSerializers FROM 'C:Documents and SettingsjcedenoMis documentosVisual Studio 2005ProjectsSqlServerProject2SqlServerProject2objDebugSqlServerProject2.XmlSerializers.dll' WITH PERMISSION_SET = External_Access; GO
y esta es la linea en donde me ocurre el error
CREATE PROCEDURE RetoraP AS EXTERNAL NAME SqlServerProject2.StoredProcedures.[RetoraP]; GO
Quisiera saber si estoy haciendo algo mal,
el metodo del web service retorna un dataset con 4 campos!!
espero que me ayuden
Saludos Cordiales
7
« en: Jueves 15 de Abril de 2010, 18:25 »
hola, por que razon haces esas conversiones, osea por que cambias de texto a entero praa luego convertirlo a string?????
no deberias evitar hacer esa conversion!!!!!!!!!!!
saludosc
8
« en: Jueves 15 de Abril de 2010, 15:44 »
hola, bueno lo primero que debes hacer es crear un txt plano en cualquier carpeta , luego creas el odbc para texto escojes el archivo y puedes hacer 2 cosas, crear un archivo schema.ini en la misma direccion del archivo plano: [nombrearchivo.txt] ColNameHeader=False Format=CSVDelimited MaxScanRows=25 CharacterSet=OEM Col1=CEDULA char width 15 Col2=NOMBRE char width 50 Col3=APELLIDO char width 50 Col4=EDAD Integer Col5=TELEFONO Integer
o al crear el odbc pones en opciones y das en formato ahi creas la estrucutra de tu archivo osea los campos con sus tipos, y una vez realizado esto en el codigo pones lo siguiente:
cone = new OdbcConnection("dsn=TEXTO"); coma = new OdbcCommand("", cone); coma.CommandText = "Insert into tabla values('" + campo1 + "','" + campo2+ "','" + campo3+ "'," + campo4+ "," + campo5+ ")"; cone.Open(); coma.ExecuteNonQuery(); cone.Close(); MessageBox.Show("Informacion almacenada correctamente");
y listo con eso insertamos en un archivo plano, tambien podemos ejecutar un select, pero ojo el odbc de texto de microsoft no soporta las instruccion UPDATE y DELETE asi que tendran que ingeniarselas para realizar estos comando!!
saludos
9
« en: Miércoles 14 de Abril de 2010, 19:57 »
Gracias a quien visito mi pregunta!!! ya realize era sencillo tenia que crear en la misma ruta del archivo txt un schema.ini con el sigueinte formato
[Tabla.TXT] ColNameHeader = False Format = CSVDelimited CharacterSet = ANSI Col1=Cedula Char width 10 Col2=Nombre char width 50 Col3=Apellido char width 50 Col4=Edad INTEGER Col5=Telefono INTEGER
ahi uno puede realizar un insert into normal , ahora falta ver como puedo realizar un delete o un update con un where !!!!!!
10
« en: Miércoles 14 de Abril de 2010, 18:41 »
hola a todos, se puede realizar una instruccion insert into a un archivo plano usando un odbc de archivo,
espero haberme hecho entender
saludos cordiales
11
« en: Jueves 25 de Febrero de 2010, 23:33 »
tendrias que recorre el datagrid , lo puedes realizar con un foreach algo asi seria
foreach( datarow fila in datagrid.rows ){ base.ejecutasql("insert into tabla values(fila[0].tostring())") }
espero te sirva saludos!!!
12
« en: Jueves 25 de Febrero de 2010, 23:31 »
mm deberias ser menos vagoneta  y poner un poco mas de tu parte y googlear  un poco mas, hay varias maneras de realizar las impresiones, puedes crear report con dataset y luego en tu codigo crear la nueva instancia del dataset y pasarselo la report, espero que con esta idea busques como crear reportes con dataset tipados, es lo que uso en alguna ocasiones!! saludos
13
« en: Lunes 4 de Mayo de 2009, 15:46 »
hola vb .net trabaja perfectamente con sql server, lo que te recomendaria que usaras ese sgbd , claro la version 2005
saludos cordiales
JC
14
« en: Domingo 3 de Mayo de 2009, 06:20 »
hola,
creo entender que lo que deseas es con tu aplicacion esocjer un archivo y moverlo donde desea como "C:" si es asi usa el FileCopy(pathOrigen,pathdestino)
saludos cordiales
JC
15
« en: Domingo 3 de Mayo de 2009, 05:31 »
Hola amigo, al parecer ese sistema tienes sus añitos  , access de por si no es sun sgbd osea un sistema de gestion de base de datos sera una base de datos pero solo eso mysql con la fusion que hiso con sun esperamos que las versiones posteriores sean mas robustas ya que para mi apreciacion personal mysql es una alternativa libre muy buena pero postgres es mas robusto en aplicaciones como web,gis SQL-Server es un sgbd que conozco un poco mas que el resto, sql server 2005 es mucho mejhor que la version 2000, tienen planes de ejecucion de consultas mas robustas , rapidas que su version anterior como vas a crear una aplicacion cliente/servidor, e utilizar una aplicacion web de consulta de datos te recomendaria que usaras la version sql 2005, y nada mejor que sql-server para una aplicacion cliente/servidor, cabe decir que oracle es inigualable, es el mejor sgbd no dicho por mi si no por muchas personas que han realizados proyetos con los 2 sgbd pero tiene un defecto...el costo  , espero haberte ayudado saludos cordiales JC
16
« en: Jueves 30 de Abril de 2009, 22:16 »
hola ,
deja ver si te entendi bien dices que tienes un combo con destinos y radiobutton con tipos de pasaje y que al seleccionar el destino y el tipo de pasaje calcule el precio imagino que tambien consideras la cantidad de pasajes, imagino que has de tener en alguna tabla el valor de cada pasaje por destino y descuentos, lo que deberias hacer para mi es; .al iniciar el programa cargar en un arreglo los boletos con sus valores .al escojer el destino y tipo de boleto deberias realizar descuentos , imagino que estudiantil no es l mismo valor que adulto, ni tercera edad .luego sencillamente lo que harias es una multiplicacion entre el valor del pasaje* la cantidad y en caso de que haya un desceunto lo realizas
es mi sugerencia
saludos cordiales
JC
17
« en: Miércoles 29 de Abril de 2009, 00:07 »
mmm es raro ya que una vez que muestras el valor con el messagebox en la propiedad deberia mostrarlo en la otra funcion, pero no seria raro que en alguna linea este reescribiendo nuevamente la variable o este volviendo a declararla, te recomiendo que ejecutes el proyecto en depuracion paso a paso(F11) para poder observar si en algun momento del proyecto se sobreescribe la variable
saludos cordiales
JC
18
« en: Martes 28 de Abril de 2009, 23:53 »
lo siento pero no lo veo, al evento va cuando selecciono otro radiobutton, es decir, cada vez que me muevo por los radiobuttons, asigno a un textbox un nombvre distinto. menos la primera vez, que teniendo selecionado el primer rabiobutton, el textbox esta vacio.
si le llamo en el load, como lo puedo hacer.
amigo, en primer lugar dentro del for no debe ir la declaracion del evento ya que cada vez estas declarando un nuevo evento que es el mismo, debes ponerlo fuera del for Dim evento As New EventHandler(AddressOf radioX_CheckedChanged) For i As Int32 = 1 To xreg Radio(i) = New RadioButton Radio(i).Top = n ......
ahora el evento no debe ser declarado para el evento checkedchanged ya que cada vez que el control cambia de estado se ejecuta el evento, ahora analiza cuando pasas de un radiobutton a otro radiobutton el estado cambio para esos 2 controles es decir se ejecuto el evento 2 veces 1 por cada control, lo optimo es realizar el evento para el evento click 'ASIGNAMOS EL HANDLER Y TODO LISTO AddHandler Radio(i).CheckedChanged, evento
debes poner AddHandler Radio(i).Click ,evento realiza estos cambios y veras que se ejecuta por primera vez el evento para el primer radio, saludos cordiales JC
19
« en: Martes 28 de Abril de 2009, 23:35 »
hola,
una vez que le asignas el valor a la variable campo1 con la propiedad como te dije no es necesario volver a asiganarle el mismo valor en la linea 187 osea ya no tienes q poner "campo1=" ya que como instancias la clase y asiganas valor al campo1 con la propiedad durante el tiempo de ejecucion de tu proyecto la variable en esa referencia de clase mantendra el valor asi que podras usarlo en cualquien procedimiento de la clase opcserver, espero haberme hecho entender
saludos cordiales
JC
20
« en: Martes 28 de Abril de 2009, 18:14 »
en caso de que en modo ejecucion te salga alfun error de referencia no establecida como instancia de un objeto tiene que cambiar la forma de declarar la variable de la clase opcserver asi
Private m_opcServer As New OpcServer
el operador new hacer una referencia hacia la clase
saludos cordiales
JC
21
« en: Martes 28 de Abril de 2009, 18:04 »
haber vamos por parte, tenemos la clase opcserver en la cual hay una variable llamada campo1 que deseamos que reciba el valor que ingresamos en el objeto llamado variable1
en la clase opcserver hagamos lo siguiente, creemos una propiedad para el campo1 en al region property coloca esto
Public Property regcampo1() As Int32 Get Return Campo1
End Get Set(ByVal value As Int32) Campo1 = value End Set End Property
en le formulario form1 declaras una variable de tipo opcserver
Private m_opcServer As OpcServer = Nothing
ahora para poder asignarle a campo1 el valor del objeto vaiable1 ponemos
m_opcServer.regcampo1 = CInt(variable1.Text) MessageBox.Show(m_opcServer.regcampo1) y pon un mensaje para verificar que campo1 cojio el valor
prueba esto, debe funcar
saludos cordiales
JC
22
« en: Martes 28 de Abril de 2009, 17:39 »
Hola, disculpa la demora es que no tenia instlado el vs 2008
por lo que veo en la clase opserver en la linea 186 pones
campo1=2020, ahi nunca le asignas a campo1 lo que tiene variable1, debes hacer campo1=CInt(claseMia.variable1.Text)
no pude corre el programa ya que usas una dll que no pude registrar en mi sistema por algun motivo , tal vez no fue creada para el sistema operativo que uso xp sp2,
saludos cordiales
JC
23
« en: Martes 28 de Abril de 2009, 15:37 »
hola,
en este ejemplo que te di se ejecuta por primera vez sin dar click en el radio button si quieres prueba poniendo un mensaje y veras que se ejecuta una 1 vez al iniciar el programa
saludos cordiales
JC
24
« en: Lunes 27 de Abril de 2009, 23:23 »
Listo enviame el proyecto , luego corregido pongo la solucion
saludos cordiales
JC
25
« en: Lunes 27 de Abril de 2009, 22:49 »
cuando creas una nueva clase para poder acceder a esa clase deber crear una nueva instancia de esa clase para poder acceder a la variable que debe ser declarada dentro de la clase como publica,te explico creando una clase de ejemplo
public class MiClase Public variable 1 as int private variable2 as int
ENd Clase
aqui he creado una clase con 2 variables una publica y una privada, es este caso a la unica que voy a poder acceder desde otra clase es a la publica, ahora para poder usar esta clase en otra debes agregar la referencia
Imports MiProyecto.MiClase Public Class ClaseNueva Dim ClaseMia as new MiClase
sub leerVariable() ClaseMia.Variable1=2 end sub
ENd Clase
de esta forma creo la clase que contiene mi variable(MiCLase) e importandola con el imports en la clase que voy a utilizar la variable(ClaseNueva) puede leer la variable en cuestion(ClaseMia.Variable1)
espero haberme explicado bien
saludos Cordiales
JC
|
|
|