Sr. Manuel, ao clicar duas vezes em cima do SUPER HEADER, e digitar um digito ex: 1, acontece o seguinte erro:
Error description: Error BASE/1102 Argument error: UPPER
Args:
[ 1] = N 1
Stack Calls
===========
Called from: => UPPER(0)
Called from: TSBROWSE.PRG => LASEEK(10635)
Called from: TSBROWSE.PRG => TSBROWSE:SEEK(8874)
Called from: TSBROWSE.PRG => TSBROWSE:KEYCHAR(5340)
Called from: => TWINDOW:HANDLEEVENT(0)
Called from: control.prg => TCONTROL:HANDLEEVENT(1414)
Called from: TSBROWSE.PRG => TSBROWSE:HANDLEEVENT(6138)
Called from: window.prg => _FWH(3252)
Called from: => DIALOGBOX(0)
Called from: DIALOG.PRG => TDIALOG:ACTIVATE(0)
Called from: cxturno.prg => FWHCXTURNO(109)
Fonte:
acaixas:={{"","","","","","",""}}
DEFINE DIALOG oDlg RESOURCE "CAIXATURNO" FONT ownd:ofont ICON OICO
REDEFINE BROWSE oBrw2 ID 4016 OF oDlg COLOR CLR_BLACK,CLR_LGREEN
obRW2:lNoVScroll := .F. //Tem que estar aqui
obRW2:lNoHScroll := .T. //Tem que estar aqui
obRW2:setArray(acaixas)
obRW2:Refresh()
obRW2:nHeightCell := 24
obRW2:nHeightHead := 24
obRW2:nHeightFoot := 24
obRW2:nHeightSuper:= 29
obRW2:lMChange := .F.
obRW2:lDrawHeaders:= .T.
obRW2:lFooting := .T.
obRW2:lNoMoveCols := .T.
**obRW2:bchange := {|| }
**obRW2:bKeyDown := {|nKey| }
**oBrw2:bOnEscape := {|| oWndChild:end() }
bColor := {|| If(oBrw2:nLogicPos() % 2 = 0,CLR_LGRAY,CLR_LGREEN) }
obRW2:SetColor( { 1, 3, 4, 5, 6, 9, 10, 13, 15, 11, 12 }, ;
{ CLR_BLACK,;
CLR_BLACK,;
nRGB(211, 227, 247),;
CLR_WHITE,;
CLR_HBLUE,;
CLR_BLACK,;
nRGB(211, 227, 247),;
CLR_WHITE,;
CLR_BLACK,;
CLR_WHITE,;
CLR_HBBLUE } )
ADD COLUMN TO BROWSE obRW2 DATA ARRAY ELEMENT 1;
TITLE "Seq.";
SIZE 40 ;
COLORS CLR_BLACK,bColor;
3DLOOK TRUE;
ALIGN DT_CENTER,DT_CENTER
ADD COLUMN TO BROWSE obRW2 DATA ARRAY ELEMENT 2;
TITLE "Usuário";
SIZE 100 ;
COLORS CLR_BLACK,bColor;
3DLOOK TRUE;
ALIGN DT_LEFT,DT_LEFT,DT_LEFT
ADD COLUMN TO BROWSE obRW2 DATA ARRAY ELEMENT 3;
TITLE "Data Caixa";
SIZE 95 ;
COLORS CLR_BLACK,bColor;
3DLOOK TRUE;
ALIGN DT_CENTER,DT_CENTER,DT_CENTER
ADD COLUMN TO BROWSE obRW2 DATA ARRAY ELEMENT 4;
TITLE "Turno";
SIZE 100 ;
COLORS CLR_BLACK,bColor;
3DLOOK TRUE;
ALIGN DT_CENTER,DT_CENTER,DT_RIGHT;
FOOTER "Total:"
ADD COLUMN TO BROWSE obRW2 DATA ARRAY ELEMENT 5;
TITLE "Valor Turno";
SIZE 80 ;
COLORS CLR_BLACK,bColor;
3DLOOK TRUE;
ALIGN DT_RIGHT,DT_RIGHT,DT_RIGHT
ADD COLUMN TO BROWSE obRW2 DATA ARRAY ELEMENT 6;
TITLE "Total do Dia";
SIZE 80 ;
COLORS CLR_BLACK,bColor;
3DLOOK TRUE;
ALIGN DT_RIGHT,DT_RIGHT,DT_RIGHT
ADD COLUMN TO BROWSE obRW2 DATA ARRAY ELEMENT 7;
TITLE "S";
SIZE 35 ;
COLORS CLR_BLACK,bColor;
3DLOOK TRUE;
ALIGN DT_CENTER,DT_CENTER,DT_CENTER
ADD SUPER HEADER TO oBrw2 FROM COLUMN 1 TO COLUMN 7 TITLE "Caixa: "+DTOC(m->hoje) 3DLOOK
Obrigado
SR.MANUEL - TSBROWSE - SUPER HEADER
Re: SR.MANUEL - TSBROWSE - SUPER HEADER
SGS wrote:Sr. Manuel, ao clicar duas vezes em cima do SUPER HEADER, e digitar um digito ex: 1, acontece o seguinte erro:
Primero veamos que es un Superheader:
![Image](http://www.imaxenes.com/mini/superheader1rx43xl.jpg)
El problema a que te refieres se presenta al hacer doble click en el título (header) de una columna. lo cual cambia el orden en que se muestra el array y permite la búsqueda incremental sobre los datos de dicha columna.
Para resolver el problema puedes:
1.- Desactivar la búsqueda incremental y cambio del orden del array con:
oBrw:lNoChangeOrd := .T.
2.- Corregir el programa TSBrowse.prg:
Linea 10635:
dice: uData := If( oBrw:lUpperSeek, Upper( uData ), uData )
debe decir: uData := If( oBrw:lUpperSeek, Upper( cValToChar( uData ) ), cValToChar( uData ) )
Linea 10638:
dice: If uData = uSeek
debe decir: If uData = cValToChar( uSeek )
Linea 10643:
dice: If uData = uSeek
debe decir: If uData = cValToChar( uSeek )
Un abrazo.
Manuel Mercado.
Sr. Manuel, funcionou em partes
agora acontece o erro:
Error description: Error BASE/1004 Class: 'NIL' has no exported method: AARRAY
Args:
[ 1] = U
Stack Calls
===========
Called from: => AARRAY(0)
Called from: TSBROWSE.PRG => LASEEK(10628)
Called from: TSBROWSE.PRG => TSBROWSE:SEEK(8889)
Called from: TSBROWSE.PRG => TSBROWSE:KEYCHAR(5340)
Called from: => TWINDOW:HANDLEEVENT(0)
Called from: control.prg => TCONTROL:HANDLEEVENT(1414)
Called from: TSBROWSE.PRG => TSBROWSE:HANDLEEVENT(6138)
Called from: window.prg => _FWH(3252)
Called from: => DIALOGBOX(0)
Called from: DIALOG.PRG => TDIALOG:ACTIVATE(0)
Called from: cxturno.prg => FWHCXTURNO(117)
Depois de clicar na coluna pesquisar um caracter ex: 7, e depois clicar BACK SPACE.
Muito obrigado
![Smile :)](./images/smilies/icon_smile.gif)
agora acontece o erro:
Error description: Error BASE/1004 Class: 'NIL' has no exported method: AARRAY
Args:
[ 1] = U
Stack Calls
===========
Called from: => AARRAY(0)
Called from: TSBROWSE.PRG => LASEEK(10628)
Called from: TSBROWSE.PRG => TSBROWSE:SEEK(8889)
Called from: TSBROWSE.PRG => TSBROWSE:KEYCHAR(5340)
Called from: => TWINDOW:HANDLEEVENT(0)
Called from: control.prg => TCONTROL:HANDLEEVENT(1414)
Called from: TSBROWSE.PRG => TSBROWSE:HANDLEEVENT(6138)
Called from: window.prg => _FWH(3252)
Called from: => DIALOGBOX(0)
Called from: DIALOG.PRG => TDIALOG:ACTIVATE(0)
Called from: cxturno.prg => FWHCXTURNO(117)
Depois de clicar na coluna pesquisar um caracter ex: 7, e depois clicar BACK SPACE.
![Sad :(](./images/smilies/icon_sad.gif)
Muito obrigado
SGS wrote:agora acontece o erro:
Error description: Error BASE/1004 Class: 'NIL' has no exported method: AARRAY
TSBrowse.prg Linea 8889
dice: lASeek( Val( cSeek ) * 10, .T. )
debe decir: lASeek( Val( cSeek ) * 10, .T., Self )
Espero que éste sea el último error
![Very Happy :D](./images/smilies/icon_biggrin.gif)
Gracias por la retroalimentación, un abrazo.
Manuel Mercado
-
- Posts: 330
- Joined: Fri May 25, 2007 9:06 pm
Hola Antonio:
No necesariamente si en tus aplicaciones que usan TSBrowse no tienes problemas. Para la próxima actualización de TSBrowse (pronto), todas estas correcciones ya estarán incluídas.
Saludos.
Manuel Mercado
mantonio_08 wrote:UNA DUDA,, EN RELACION A LOS CAMBIOS DE LA CLASE....ESTIMADO MANUEL,, ESTOS CAMBIOS SE DEBERIAN REALIZAR POR TODOS LOS USAURIOS DE TSBROWSE....
No necesariamente si en tus aplicaciones que usan TSBrowse no tienes problemas. Para la próxima actualización de TSBrowse (pronto), todas estas correcciones ya estarán incluídas.
Saludos.
Manuel Mercado
-
- Posts: 330
- Joined: Fri May 25, 2007 9:06 pm