|
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 - mamex
1
« en: Martes 10 de Febrero de 2009, 17:07 »
Que tal quiero compartir este manual que he desarrollado para configurar las librerias MPI y OpenMp usadas para realizar programas en paralelo en clusters ya sea con las arquitecturas Beowulf o SMP.
El manual aplica para configurar ya sea con cualquiera de los lenguajes: C C++ Fortran
Todo ésto es bajo el ambiente Linux.
Espero y sea de utilidad. Saludos
Autor: Manuel A. Ortiz Montalvo
2
« en: Lunes 29 de Octubre de 2007, 15:14 »
Yo lo hice desde el compilador Turbo C++, este ya trae la libreria gràfica, te recomiendo que te bajes este compilador. Saludos!!
3
« en: Viernes 15 de Junio de 2007, 23:57 »
Mira yo usé el compilador Turbo C++ 3.0, ese ya trae integrado esa libreria, ¿Con que compilador o IDE estás tratando de ejecutarlo?. Una opción es tratar de bajarte esa libreria de internet. Saludos
4
« en: Viernes 30 de Marzo de 2007, 02:01 »
mmmm, y ademas yo soy el autor de ese codigo.
5
« en: Miércoles 28 de Marzo de 2007, 01:47 »
Pues que la segunda opción es más simple (mas corta) y la primera es más clara, ya que especificas a que te estás refiriendo (fields -> campos).
6
« en: Miércoles 28 de Marzo de 2007, 01:37 »
Mira en un programa yo ocupo éste codigo para imprimir un reporte mandandole parametros: 'Si esta cerrada la conexión la abro If DEnv1.CxnOrdClientes.State <> 1 Then _ DEnv1.CxnOrdClientes.Open 'Mando a llamar al command, enviandole mi parametro DEnv1.cmdOrdCliente_Grouping miVariable 'Muestra el reporte drOrdCliente.Show 1 'Cierra la conexion DEnv1.CxnOrdClientes.Close
7
« en: Lunes 26 de Marzo de 2007, 03:25 »
Ahhh, tal vez no es problema del RptImage, para mi que es algun problema, con el command. Si gustas mandame tu proyecto y lo cheko.
8
« en: Domingo 25 de Marzo de 2007, 22:53 »
Mira, lo que te dije es para la búsqueda que deseas, por ejemplo usas un text para meter el nombre de un autor, y un boton, metes el nombre del autor en el text, presionas el boton buscar, y ahi metes la consulta en tu data: Data1.RecordSource="Select * from Libros where autor = " & text1.text & "'" Data1.refresh
Debes tener un grid enlazado a tu Data, Cuando presiones el boton, hace una consulta que muestre solo los titulos que tengan autor igual a lo que escribiste en el text. Y actualizas el data, al estar enlazado a tu grid, en el grid se mostrará la nueva consulta, o sea, solo los titulos que tengan autor igual al autor del text. Cualquier duda, vuelve a escribir. O agregame al msn.
9
« en: Domingo 25 de Marzo de 2007, 21:04 »
No, el timer nunca se para, al menos que tu se lo digas, ej: Timer1.enabled = false
10
« en: Domingo 25 de Marzo de 2007, 20:56 »
Simplemente haces una resta de fechas, la fecha en el text la convierto en fecha con CDate, y la resto a la fecha actual (date) MsgBox CDate(Text1.Text) - Date
11
« en: Domingo 25 de Marzo de 2007, 20:42 »
Que tal, para eso se inventaron las consultas SQL, al recordset le asignas una consulta. Ejemplo: Data1.RecordSource="Select * from Libros where autor = 'Larson' "
Te recomiendo que leas acerca de consultas SQL
12
« en: Domingo 25 de Marzo de 2007, 20:35 »
Yo hice una función para facilitarme eso: 'Busca un texto en un combo, si lo encuentra se posiciona en el 'sino, te deja con el texto k tenía Public Function BuscarEnCombo(cmb As ComboBox, valor As String) As Boolean Dim i As Long i = 0 'Mientras no encuentre el valor y hayan elementos en la lista While cmb.List(i) <> valor And i < cmb.ListCount i = i + 1 Wend 'Si lo encontró If cmb.List(i) = valor Then cmb.ListIndex = i BuscarEnCombo = True End If End Function
Te regresa un true, si el elemento existe en el combo y un false, si no existe. Lo ocupas de la siguiente manera buscarEnCombo(miCombo,"Mañana")
Otra manera mas facil, si sabes que el elemento existe realmente en el combo, sólo escribe: Que aqui pondrias el valor de tu campo
13
« en: Domingo 25 de Marzo de 2007, 20:25 »
Hola, realmente tu codigo a mi si me funciona, usé este codigo With DataReport1.Sections("Sección4") Set .Controls("Image1").Picture = LoadPicture(App.Path & "\Photo0004.bmp") End With
Solo cambié el nombre de una imagen, por una que yo tengo. Te recomiendo que verifiques que el control Image realmente se llame Image1 y que realmente esté en la sección 4 del reporte que debe llamarse DataReport1, y que tu imagen Foto.bmp se encuentre en la misma carpeta donde tienes el ejecutable de tu programa. En conclusión, checa que todas las variables que tienes en el código realmente se llamen así en los objetos. Espero y te sirva, saludos.
14
« en: Jueves 22 de Marzo de 2007, 01:11 »
Prueba con la funcion de API shellExecute
15
« en: Miércoles 21 de Marzo de 2007, 02:54 »
App.path te regresa la ubicación completa de tu exe. shell(App.path & "\prog_vb\ejec.exe")
16
« en: Miércoles 21 de Marzo de 2007, 01:23 »
Si usas data en el evento reposition haces la resta, y si usas ado en el evento moveCompleted 'Con ADO Private Sub Adodc1_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, _ ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, _ ByVal pRecordset As ADODB.Recordset) Label3.Caption = Val(Label1.Caption) - Val(Label2.Caption) End Sub 'Con DATA Private Sub Data1_Reposition() Label3.Caption = Val(Label1.Caption) - Val(Label2.Caption) End Sub
17
« en: Domingo 18 de Marzo de 2007, 20:40 »
Que onda, aqui te mando una solución, para que te des una idea, usé una clase que guarde la cadena y el numero de repeticiones, ya que en visual basic no se usar estructuras, jejeje. Pero si sabes como usarlas, pues usalas en lugar de la clase.
Usé el método de burbuja, pero puedes mejorarlo, usando el quicksort. Saludos.
P.D. Adjunto el proyecto.
18
« en: Viernes 16 de Marzo de 2007, 18:01 »
Aki tienes una solución, solo quiero recordarte, que aqui no se hacen tareas, y que debes escribir dudas específicas, no vuelvas a pedir que te den algo ya hecho. Private Sub Form_Load() MsgBox permutacionAleatoria("v15563696") End End Sub Private Function permutacionAleatoria(s As String) As String Randomize Dim usados(100) As Boolean Dim i As Integer, aux As Integer Dim sFinal As String Dim c As Integer, cant As Integer cant = Len(s) While c < cant aux = Rand(0, cant - 1) If usados(aux) = False Then sFinal = sFinal & Mid(s, aux + 1, 1) usados(aux) = True c = c + 1 End If Wend permutacionAleatoria = sFinal End Function 'Te regresa 1 valor aleatorio, entre el rango dado Public Function Rand(ByVal Low As Long, _ ByVal High As Long) As Long Rand = Int((High - Low + 1) * Rnd) + Low End Function
19
« en: Viernes 16 de Marzo de 2007, 02:38 »
En que objetos muestras los datos??, como eliges el que quieres borrar???
20
« en: Miércoles 14 de Marzo de 2007, 01:02 »
Pues si lo que quieres reiniciar la conexión cada minuto (Segun lo k yo entendi), pues pon un timer con propiedad interval = 60000, para que se ejecute cada 60 segundos, y en el evento timer del objeto timer1, cierra la conexión y vuelvela a abrir. Private Sub Timer1_Timer() mFTP.CloseConnection mFTP.OpenConnection txtServer.Text, txtUser.Text, txtPassword.Text End Sub
21
« en: Lunes 12 de Marzo de 2007, 03:45 »
Que tal, aqui te dejo una solucion y espero te sirva. 'Declara la funcion shellexecute Private Declare Function ShellExecute Lib "shell32.dll" Alias _ "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, _ ByVal lpFile As String, ByVal lpParameters As String, _ ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long 'al presionar un boton busca el archivo Private Sub Command1_Click() Dim archivo As String CommonDialog1.ShowOpen archivo = CommonDialog1.FileName ShellExecute Me.hwnd, "Open", archivo, "", "", 1 End Sub
22
« en: Sábado 10 de Marzo de 2007, 21:19 »
Que tal, mira, lo que puedes hacer es un formulario con los controles que desees, todos dentro de un picture y al final imprimir el picture (Que contendrá todos los controles).
Ejemplo, puedes meter muchos labels dentro de un picture, y organizarlos como desees, y dandoles el formato que desees, al final, imprimes todo el picture.
Esto no es con un data report.
23
« en: Sábado 10 de Marzo de 2007, 21:09 »
Tal vez, a las conexiones de las bases de datos les pones toda la ruta, "C:\Documents and Settings\Administrador .... ", etc. Si haces esto, cuando la lleves a otra Pc, el programa buscará la base de datos en ésta ruta, y obviamente no estará en la misma ruta, ya que es otra computadora, con otra estructura de carpetas.
Si éste es el problema, lo que tienes que hacer, es que no pongas toda la ruta, ejemplo: si tu base de datos está en la misma carpeta donde se encuentra tu exe, en la ruta solo escribe el nombre de la base de datos, porque te la buscará en la misma carpeta donde esté tu exe.
24
« en: Sábado 10 de Marzo de 2007, 21:03 »
Metete al menú Proyecto -> despues elige referencias, y busca una que diga: Microsoft ActiveX Data Objects 2.X Library, dale click al cuadrito izquierdo para que se seleccione y posteriormente, da click al boton aceptar.
Elige la version que desees. 2.X -> donde X es la versión.
En cuanto a lo del signo de admiración ( ! ), eso si es permitido en un recordset.
25
« en: Viernes 2 de Marzo de 2007, 00:55 »
Que tal, mira, esa función (Round) sirve para redondear, yo hice una para truncar, recuerda que redondar y truncar NO es lo mismo. Aqui te pongo el código por si lo necesitas. 'Saca la cantidad de decimales que le digas a una cantidad Public Function Decimales(ByVal num As Double) As String Dim txt As String, pos As Integer txt = num pos = InStr(1, num, ".", vbTextCompare) If pos = 0 Then _ pos = InStr(1, num, ",", vbTextCompare) If pos <> 0 Then Decimales = Right(txt, Len(txt) - pos) Else Decimales = "0" End If End Function 'Trunca un número dado Public Function Truncar(ByVal num As Double, ByVal dig As Integer) As String Truncar = Int(num) & "." & Left(Decimales(num), dig) End Function
Y para usar la función puedes usarla de la siguiente manera: msgbox truncar(25.4457,2)
Mucho ojo, el separador de decimales que usamos en México es " . " por lo cual mi función trabaja para ello.
|
|
|