• Domingo 19 de Mayo de 2024, 17:52

Mostrar Mensajes

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 - kofkurne

Páginas: [1]
1
Bases de Datos / Re: Ordenar La Búsqueda
« en: Domingo 26 de Febrero de 2006, 21:55 »
Gracias por tu respuesta..
Lo estuve comentando con un colega y parece ser que lo que yo quiero hacer es ilógico. Al final lo he solucionado con dos select, y tratando los dos campos por separado.
referencia1, referencia2 lo que hace es ordenarlo por referencia1 y en caso de que hubiera varias referencia1 iguales lo ordena por referencia2..

Gracias..

2
Bases de Datos / Re: Ordenar La Búsqueda
« en: Martes 21 de Febrero de 2006, 18:44 »
Yo supongo que tiene que ser algo parecido a esto pero modificando el final:
Código: Text
  1. Data1.RecordSource = "SELECT * FROM Tabla1 WHERE referencia2 LIKE '1*' or referencia1 LIKE '1*' ORDER BY referencia1 and referencia2 "
  2.  

No da error el final pero no lo ordena bien... y tiene que ser algo parecido, pero he probado muchas combinaciones y nada... una ayuda...

3
Bases de Datos / Ordenar La Búsqueda
« en: Martes 21 de Febrero de 2006, 18:22 »
Hola a todos.
Tengo una base de datos con una tabla: tabla1, en esta tabla sólo he puesto dos campos: referencia1 y referencia2.
referencia1 tiene estos registros: 1,5,15,13
referencia2 tiene estos registros: 2,17,7,22

He accedido a la base de datos mediante un control de datos Data.
Yo lo que he hecho es seleccionar todos los registros de la tabla1 (es decir, todos los registros de los campos referencia1 y referencia2) que comiencen por 1.
Lo he conseguido de este modo:
Código: Text
  1.     Data1.RecordSource = "SELECT * FROM Tabla1 WHERE referencia2 LIKE '1*' or referencia1 LIKE '1*' "
  2.  
  3.  

Pero mi pregunta es: ¿Cómo puedo conseguir ordenar los registros para que se ordenen según he hecho en Data1.RecordSource?

Es decir, si yo tengo un textbox en mi formulario que enlaza a la referencia2 al pasar los registros uno a uno tendría que ver este orden: 2,22,7,17. ¿Entendéis mi pregunta verdad?

Muchísimas gracias por la ayuda.

4
Visual Basic 6.0 e inferiores / Re: Sobre Menú
« en: Domingo 12 de Febrero de 2006, 19:36 »
Después de mirar por todos los sitios que he podido, nadie consiguió echarme un cable, empecé a analizar códigos y al final no pude conseguir exactamente lo que pretendía.
Volví a pensar y dejar las API de lado y por si a alguien le resulta de ayuda, conseguí por fin resolver el problema del post. Decidí crear un menú no visible equivalente a copiar, pegar, eliminar, cortar y seleccionar todo y utilizar el portapapeles para manejar estos datos.
Y por último para cargar el menú sin que se vea el menú del sistema en el textbox lo que he hecho ha sido desactivarlo (enabled = false) y activarlo y así lo que estaba seleccionado queda todavía intacto..

Si alguien con el tiempo consigue hacerlo con las API seguiré este post...
Un saludo

5
Visual Basic 6.0 e inferiores / Sobre Menú
« en: Martes 7 de Febrero de 2006, 19:47 »
Hola!!
Tengo un formulario con sólo un Textbox y un módulo.
Lo que quiero hacer es que cuando en el textbox pulse con el botón derecho y seleccione la opción -lectura de derecha a izquierda- ese menú emergente se cierre y que esa opción -lectura de derecha a izquierda- no sea ejecutada.

Yo a lo máximo que he llegado ha sido a interceptar cuando paso el cursor, por encima de la opción: -lectura de derecha a izquierda-. Pero me es imposible cerrar el menú y aparte interceptar cuando se pulse la opción y no como he hecho yo cuando paso el cursor..

Tal vez sea algo complicado, pero a ver si alguien me echa una mano..
Dejo el código para que probéis lo que digo:

En el formulario hay un Textbox. Este es el simple código que hay que poner en el formulario:
Código: Text
  1. Private Sub Form_Load()
  2.     Activa
  3. End Sub
  4.  
  5. Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
  6.     Desactiva
  7. End Sub
  8.  

Y este código en el módulo:

Código: Text
  1. Option Explicit
  2.  
  3. Public Declare Function SetWindowLong Lib "user32" Alias _
  4. "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, _
  5. ByVal dwNewLong As Long) As Long
  6.  
  7. Public Declare Function CallWindowProc Lib "user32" _
  8. Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, _
  9. ByVal hWnd As Long, ByVal Msg As Long, ByVal wParam As Long, _
  10. ByVal lParam As Long) As Long
  11.  
  12.  
  13. Public Const GWL_WNDPROC = (-4)
  14. Global PrevWndProc As Long
  15.  
  16. Public Sub Activa()
  17.     PrevWndProc = SetWindowLong(Form1.Text1.hWnd, GWL_WNDPROC, AddressOf interceptar)
  18. End Sub
  19.  
  20. Public Sub Desactiva()
  21.   Dim temp As Long
  22.     temp = SetWindowLong(Form1.Text1.hWnd, GWL_WNDPROC, PrevWndProc)
  23. End Sub
  24.  
  25. Public Function interceptar(ByVal hWnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
  26.     If Msg = &H11F Then 'WM_MENUSELECT = &H11F
  27.         If wParam = -2139062272 Then 'Es el parámetro wParam correspondiente.
  28.             Debug.Print "Has pasado sobre -lectura de derecha a izquierda- " & Now & ""
  29.             interceptar = True
  30.         End If
  31.     Else
  32.         interceptar = CallWindowProc(PrevWndProc, hWnd, Msg, wParam, lParam)
  33.     End If
  34. End Function
  35.  

Gracias

Páginas: [1]