Antonio,
It seems that in usrrdd.c are missing some functions like FieldSize FieldLen Dbrlocklist.
Shouldnt these also be there?
Antonio H Ferreira
Antonio,
It seems that in usrrdd.c are missing some functions like FieldSize FieldLen Dbrlocklist.
Shouldnt these also be there?
AHF wrote:Antonio,
What this needed for:
STATIC FUNCTION ADO_RAWLOCK( nWA, nAction, nRecNo ) // LOCAL oRecordSet := USRRDD_AREADATA( nWA )[ WA_RECORDSET ] /* TODO */ HB_SYMBOL_UNUSED( nRecNo ) HB_SYMBOL_UNUSED( nWA ) HB_SYMBOL_UNUSED( nAction ) RETURN HB_SUCCESS
Antonio,
I dont have any c expert and even so it would be dificult to understand it without proper documentation.
In order to proceed I need the following functions working:
OrdFor()
FieldSize() or FieldLen()
FieldDec()
DbrlockList()
I'm in a dead end ! What do you propose?
Antonio,
Its not a matter of knowing C, instead it is a matter of properly searching ![]()
You asked for OrdFor().
I find this:
/ DBSCOPEINFO /
Also:
/ DBORDERCONDINFO /
Have we implemented those functions in adordd.prg ?
In SQL we may need to store a string cFor value only, no need for the codeblock.
I know this is not easy, but slowly we can keep going...
1. Is there a UR_FOR or similar in harbour\include\hbusrrdd.ch ?
3. In SQL we may need to store a string cFor value only, no need for the codeblock.
2. Have we implemented those functions in adordd.prg ?
FUNCTION OrdFor(nOrder)
//works only for current selected workarea not alias->(ordfor(n))
LOCAL cTablename := USRRDD_AREADATA( Select() )[ WA_TABLENAME ]
LOCAL aWAData := USRRDD_AREADATA( Select() )
LOCAL cFor := ""
IF nOrder = 0
nOrder := aWAData[WA_INDEXACTIVE]
cFor := aWAData[WA_INDEXFOR][nOrder]
ELSEIF nOrder <= LEN(aWAData[WA_INDEXES] )
cFor := aWAData[WA_INDEXFOR][nOrder]
ENDIF
RETURN cFor 20: ENCCLIST NomeRDD: ADORDD
==============================
RecNo RecCount BOF EOF
1 34 .F. .F.
Índices em uso TagName
=> NRENCOMEND+CODIGOPROD+ARMAZEM ENCCPRO
CODIGOPROD+ARMAZEM+NRENCOMEND PROENCC
GUIA+CODCLIENTE+CODIGOPROD+ARMAZEM MECPD
CODCLIENTE CDENCCL
NRFACTUR+CODCLIENTE+CODIGOPROD+ARMA PTFACT
NRFACTUR+CODIGOPROD+ARMAZEM+ANO +SE NRFPROD
CODIGOPROD+NRCONTRATO CCONTRT
Relações em uso
Registos fechados
30: => OFERTAS NomeRDD: ADORDD
==============================
RecNo RecCount BOF EOF
1 3 .F. .F.
Índices em uso TagName
CODCLIENTE+CODIGOPROD+ARMAZEM+DATAO CLIPRO
CODIGOPROD+ARMAZEM+CODCLIENTE+DATAO PROCLI
CODCLIENTE+DATAOFERTA +NUMEROOFER+C CLIPRO2
CODIGOPROD+ARMAZEM+DATAOFERTA +NUME PROCLI2
=> CODCLIENTE TEMP2
Relações em uso
Registos fechadosAntonio,
I never looked at .ch.
I understand now how it works.
Ive define UR_INFO and now I get the call from dbrlocklist do get the array.
We re back again
Antonio,
Very good! ![]()
Antonio,
if you post here or provide a url to download your most recent version, I guess many users may be interested
in testing it and surely will provide a great feedback ![]()
hb_usrInfo( AREAP pArea, HB_USHORT uiInfoType, PHB_ITEM pInfo ) nRecno := oRecordSet:BookMark
// iif( oRecordSet:AbsolutePosition == -3, oRecordSet:RecordCount() + 1, oRecordSet:AbsolutePosition )Antonio,
yes I think it is fine.
You are doing a great work, congratulations! ![]()
Once you complete it, you could provide it to Harbour dev team so it will get updated in the Harbour official repository
and you will become an official Harbour contributor ![]()
Antonio,
In order to finish network and concurrent activity I need to work with transactions.
For that I need to know if in ADORDD each time we open a new recordset its in the same connection.
Its crucial to know this because transactions are per connection.
Do you have any idea how to test that?
Antonio,
AS far as I know I would say yes, but Mr. Rao is the right one to confirm us this ![]()
Antonio,
Ive already ask him in my oyher post ADO exclusive open.
It seems that in the source of tdatarow we could check that.