Page 1 of 1
Validar duplicidad en grid
Posted: Fri May 15, 2020 2:59 am
by jorge.posadas
Grupo,
Estoy creando una pantalla en donde se captura las ventas del día, y por cada captura voy llenando un grid para que el usuario vea lo que ha capturado, sin embargo tengo el problema que si el usuario capturo la venta número 120, y más adelante vuelve a capturar ese mismo número de vanta, ¿como valido que en grid BUSQUE si ya existe ese número? esto es para evitar que se capture más de una vez un mismo número de venta.
De antemano agradezco la ayuda.
Re: Validar duplicidad en grid
Posted: Fri May 15, 2020 10:26 am
by mustafa
Si colocas un Contador de Captura no se repetirá
duplicidad de Captura, mira este Sample de Contador
Code: Select all
#include <hmg.ch>
* Modified by Mustafa López Alicante (Spain)
*-----------------------------------------------*
FUNCTION MAIN
*-----------------------------------------------*
SET CODEPAGE TO SPANISH
SET LANGUAGE TO SPANISH
SET EXCLUSIVE ON
SET CENTURY ON
SET DATE FRENCH
SET DATE FORMAT TO 'dd/mm/yyyy'
SET EPOCH TO 2000
SET ESCAPE ON
SET DELETED ON
SET NAVIGATION EXTENDED
SET SOFTSEEK ON
SET DECIMALS TO 0
SET TOOLTIPSTYLE BALLOON
PRIVATE apar_5 := 0
IF !FILE("numerato.mem")
apar_5 := apar_5 + 1
apar_2 := STRZERO( apar_5 ,5)
apar_3 := DTOC(DATE())
apar_4 := TIME()
SAVE TO numerato.mem ALL LIKE apar_*
ELSE
RESTORE FROM numerato.mem ADDITIVE
apar_5 := apar_5 + 1
apar_2 := STRZERO( apar_5 ,5)
apar_3 := DTOC(DATE())
apar_4 := TIME()
SAVE TO numerato.mem ALL LIKE apar_*
ENDIF
RESTORE FROM numerato.mem ADDITIVE
MsgInfo( apar_5 )
MsgInfo( apar_2 )
/*
Para Salvar la Captura de Pantalla
RESTORE FROM numerato.mem ADDITIVE
numeroQ := ALLTRIM( STRZERO( apar_5 ,5) )
cNunPho := "Photo\"+ numeroQ +".jpg"
apar_5 := apar_5 + 1
apar_2 := STRZERO( apar_5 ,5)
apar_3 := DTOC(DATE())
apar_4 := TIME()
SAVE TO numerato.mem ALL LIKE apar_*
*/
Return Nil
Mira :
https://www.hmgforum.com/viewtopic.php? ... Cam#p60219
==>> WebCamPhoto.zip
Saludos
Mustafa
Re: Validar duplicidad en grid
Posted: Fri May 15, 2020 1:40 pm
by danielmaximiliano
Simple, el usuario puede capturar las veces que quiera una misma factura ya que la captura contiene en orden de facturacion o/u orden de la numeracion de la factura.. espero se comprendalo. lo mismo es valido para los remitos
Re: Validar duplicidad en grid
Posted: Fri May 15, 2020 6:16 pm
by martingz
Jorge puede que sea una manera algo muy basico, pero yo validaria cuando ingreses el numero de la factura ,buscaria recorriendo los valores del grid
for y =1 to form.grid.itemcount
aValues:=form.grid.item(y)
if aValues[X] = form2.textnumfac.value
endif
next
algo asi
saludos
Re: Validar duplicidad en grid
Posted: Fri May 15, 2020 11:02 pm
by jorge.posadas
Lo resolvi, gracias a la sugerencia de Martin
// Reviso si no existe una venta previamente capturada
FOR venta := 1 TO Frm_Nota_Venta.Grd_Nota_Venta.ItemCount
IF ALLTRIM(Frm_Nota_Venta.Grd_Nota_Venta.Cell(venta,1)) == ALLTRIM(Frm_Nota_Venta.Txt_Serie.Value) .AND. +;
ALLTRIM(Frm_Nota_Venta.Grd_Nota_Venta.Cell(venta,3)) == ALLTRIM(STR(Frm_Nota_Venta.Txt_Numero_Nota.Value))
MsgExclamation("Ya existe ese número de venta con ese número de serie","Corriga")
Frm_Nota_Venta.Txt_Numero_Nota.SetFocus
RETURN
ENDIF
NEXT venta
Re: Validar duplicidad en grid
Posted: Sat May 16, 2020 6:03 am
by mol
It would be easier to build your grid as a VIRTUAL.
In this case you have data in a table and you case use ASCAN function.