Umstieg DBF/NTX auf ADS/CDX

Advantage Database Server

Moderator: Moderatoren

Umstieg DBF/NTX auf ADS/CDX

Beitragvon volkrrr » Fr, 10. Okt 2014 17:25

Hallo zusammen,
ich muss eine Anwendung von DBFs mit NTX-Dateien auf ADS mit CDX umstellen. Ohne CDX kann ich ja die SQL-Eigenschaften von ADS nicht nutzen. Was muss ich da genau machen? Bisher ist alles so einfach:
Code: Alles auswählen
use Adressen
index on upper(Name) to adnam
set index to adnam


und fertig.

In einem kleinen Testprogramm steht die Verbindung zum ADS Server steht, die Adressen-DBF kann ich öffnen und skippen.
Was ist jetzt zu tun?
volkrrr
Cut&Paste-Entwickler
Cut&Paste-Entwickler
 
Beiträge: 26
Registriert: Mo, 20. Feb 2006 16:17

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon Roland Gentner » Fr, 10. Okt 2014 23:35

Hallo "volkrrr"

Dein Anliegen zwingt mich geradezu zu einem (unqualifizierten) Kommentar:
...von NTX auf CDX mit ADS und SQL..
'ne ganze Mange Zeugs was Du da gleich reinpackst.
Vom Forum am besten gleich eine funktionierende Kompaktlösung, und am liebsten dreizeilig - wie im Beispiel...
Gruß
Roland
Benutzeravatar
Roland Gentner
1000 working lines a day
1000 working lines a day
 
Beiträge: 655
Registriert: Fr, 24. Nov 2006 8:30
Wohnort: Neresheim

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon Jan » Sa, 11. Okt 2014 5:07

Hallo Volker,

das ist alles nicht ganz so trivial.

Erstens: Umstieg auf FOXCDX. Eine grundsätzlich sehr sinnvolle Sache, selbst wenn Du nicht auf ADS umrüsten willst. Problem: Du erstellst nicht mehr mehrere Indexdateien mit dem jeweiligen Namen, sondern einen Index (vorzugsweise mit dem Namen der dbf, meine persönliche Meinung dazu), in dem die Indizee mit ihrem jewiligen Namen untergebracht sind. Das erfordert beim Indexerstellen eine kleine Änderung. Beim Zugriff auf den Index kann alles bleiben wie es ist. Obwohl ich von Deiner alten Syntax auf die aktuellen Fuktionen dazu umsteigen würde, aber auch das ist meine persönliche Meinung.

Beim Umstieg auf FOXCDX mußt Du eventuell eine Konvertierung der dbf vornehmen. DBFNTX ist ASCII, in FOXCDX kannst Du wählen ob Du ASCI oder ANSI nehmen willst. Ich würde hier dringend zum Umstieg auf ANSI raten.

Für all das mußt Du natürlich Deine dbesys anpassen ...

Wenn das alles sauber läuft mußt Du die dbf in den ADS rüber schieben. Ansich kein Problem. Du mußt aber den ADS sauber installieren, und in Deinem Programm die Verbidung herstellen. Das hört sich total einfach an, kann aber auch so seine Tücken haben, wie manche Diskussion hier im Forum zeigt. Auch hier mußt Du nochmals Deine dbesys anpassen ...

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Foren-Administrator
Foren-Administrator
 
Beiträge: 11624
Registriert: Fr, 23. Sep 2005 17:23
Wohnort: 49328 Melle

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon brandelh » Sa, 11. Okt 2014 7:17

Jan hat geschrieben:Problem: Du erstellst nicht mehr mehrere Indexdateien mit dem jeweiligen Namen, sondern einen Index (vorzugsweise mit dem Namen der dbf, meine persönliche Meinung dazu), in dem die Indizee mit ihrem jewiligen Namen untergebracht sind. Das erfordert beim Indexerstellen eine kleine Änderung.

das KANN man machen und es erleichtert die Verwaltung der Indexe, da die DBF und die CDX mit gleichem Namen möglich sind.
Man kann aber auch wie bisher mehrere CDX Dateien haben, das habe ich in einem Fall gemacht, weil es schnell gehen musste und ich nicht viel ändern wollte,
Dann muss man natürlich nach "NTX" suchen und auf OrdBagExt() ändern, was ich meist verwende ... natürlich geht das nur für den "Standardindex".

Beachten muss man, dass die Indexsuche bei CDX unabhängig von Groß-/Kleinschreibung ist, UPPER()/LOWER() in Such und Indexbegriff ist also nicht mehr nötig.
Man kann aber auch nicht mehr zwischen kleinen und großen Einträgen unterscheiden, für die CDX sind beide gleich.

Ob die Datei ANSI oder OEM speichern soll muss man sich überlegen, solange nur die Anwendung darauf zugreift spricht nichts gegen ANSI.
Allerdings kann man das nicht einfach mal so entscheiden, es kommt auf die Einstellung von SET CHARSET bei der Erstellung der (FOX)DBF an.

Zu der ADS kann ich nichts sagen.
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
 
Beiträge: 13328
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon volkrrr » Sa, 11. Okt 2014 9:18

@ Roland: Dein Kommentar bringt mich nicht wirklich weiter ;-) Wie ich geschrieben habe, ist die Basis bei ADS gelegt. Das könnte so klappen, wie ich es in meinem Test aufgebaut habe. Der Hinweis DBF/NTX nach ADS/CDX sollte nur klar machen, welches Ziel ich mit CDX verfolge...
@ Jan: Hi Jan, eine Konvertierung in ANSI schaffe ich, das wird kein Prob sein. Würde eine CDX nehmen, wie Du vorschlägst. Die Datenbanken in ADS einlagern und zur Verfügung stellen, klappt auch so weit. Mit NTX kann ich auch arbeiten, mir fehlt aber dann die SQL-Option. Deswegen kam ich auf CDX und bitte deswegen um ein paar Tipps oder Beispiele.
Möchte meine Frage genauer stellen:
Mit obigem Ziel, wie genau muss die DBESYS eingestellt werden und wie erzeuge ich die CDX. Da ich lesen kann würde mir ein Hinweis auf eine Doku reichen, wenn natürlich einer ein paar Zeilen Quelltext als Bsp. hat, ...
volkrrr
Cut&Paste-Entwickler
Cut&Paste-Entwickler
 
Beiträge: 26
Registriert: Mo, 20. Feb 2006 16:17

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon Jan » Sa, 11. Okt 2014 9:28

Volker,

CDX hat unter ADS einen weiteren Vorteil: NTXe sind in der Anzahl je dbf begrenzt. CDX nicht. Jedenfalls nicht, wenn die als Tags in einer einzelnen CDX untergebracht sind, den Weg von Hubert bin ich noch nie gegangen.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Foren-Administrator
Foren-Administrator
 
Beiträge: 11624
Registriert: Fr, 23. Sep 2005 17:23
Wohnort: 49328 Melle

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon Tom » Sa, 11. Okt 2014 10:08

Beachten muss man, dass die Indexsuche bei CDX unabhängig von Groß-/Kleinschreibung ist,


Auch das lässt sich beeinflussen.
Herzlich,
Tom
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 6694
Registriert: Do, 22. Sep 2005 22:11
Wohnort: Berlin

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon brandelh » Sa, 11. Okt 2014 23:36

Tom hat geschrieben:
Beachten muss man, dass die Indexsuche bei CDX unabhängig von Groß-/Kleinschreibung ist,

Auch das lässt sich beeinflussen.

wie ?
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
 
Beiträge: 13328
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon Friedhelm » Mo, 13. Okt 2014 12:35

In der Client Engine (ACE) von ADS gibt es eine DLL-Funktion, mit der man die internen Tabellenformate konvertieren kann:

AdsConvertTable( <hObj>, <usFilterOption>, <pucFile>, <usTableType> )
<hObj> => Handle auf eine bereits geöffnete Datei (z.B. DBFNTX) siehe auch AX_GetTablehandle() aus der ADSDBE
<usFilterOption> => 0=ignoreFilters; 1=respectFilters
<pucFile> => Dateiname der zu konvertierenden Datei
<usTableType> => Typ nach dem konvertiert werden soll: 1=nach dbfNTX; 2=nach dbfCDX; 3=nach ADT

Diese DLL-Funktion ist in der Datei "ACE32.DLL" enthalten:
Code: Alles auswählen
USE MyNtxTable NEW VIA "ADSDBE"
hTbl := AX_GetTableHandle()
cNewFile := "MyCdxTable"
lOK := DLLCall("ACE32.DLL",DLL_STDCALL,"AdsConvertTable, hTbl, 0, @cNewFile, 2) == 0
Gruß Friedhelm
Benutzeravatar
Friedhelm
Cut&Paste-Entwickler
Cut&Paste-Entwickler
 
Beiträge: 46
Registriert: Sa, 08. Apr 2006 16:20
Wohnort: Leverkusen

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon volkrrr » Sa, 07. Feb 2015 11:10

Hallo zusammen,
ich muss mich nochmals zu dem Thema melden. Ich habe meine gesamte Anwendung nun auf ADS umgestellt. Läuft alles stabil. Bleibt mir nur noch der Umstieg auf CDX (bin noch auf NTX).
Ich habe folgende Zeilen verändert:
Code: Alles auswählen
   LOCAL cConnect := "DBE=ADSCDX;SERVER=\\TC-WorkSvr\c\ADS\TC-Adress"

    IF ! DbeLoad( "ADSDBE" )
       confirmbox(,"Unable to load ADSDBE")
       quit
    ELSE
       confirmbox(, "Loaded")
    ENDIF
    IF ! DbeLoad( "CDXDBE",.T.)
       msgbox("Database engine CDXDBE not loaded")
    ENDIF
    IF ! DbeBuild( "ADSCDX", "ADSDBE", "CDXDBE" )
        msgbox("ADSCDX database engine could not be created")
    ENDIF

   DbeInfo( COMPONENT_DATA , ADSDBE_TBL_MODE, ADSDBE_CDX )
   DbeInfo( COMPONENT_ORDER, ADSDBE_TBL_MODE, ADSDBE_CDX )

   DbeSetDefault( "ADSCDX" )
   oSession := DacSession():New( cConnect )

Durchläuft das Programm diese Programmzeilen, bleibt es bei DacSession():New mit dem Fehler: "Operation wird durch DBE nicht unterstützt" Operation: dacConnect hängen.
Hat einer eine Idee, was ich da falsch mache?
Ändere ich den Connectstring in cConnect := "DBE=ADSDBE;SERVER=\\TC-WorkSvr\c\ADS\TC-Adress", also das DBE=ADSCDX in ADSDBE, dann klappt der Connect, allerdings bleibt dann das Programm mit einem Fehler hängen, den ich überhaupt nicht deuten kann (s.u.). Adressen.dbf ist natürlich im ADS als CDX aufgenommen.
XPPERROR.LOG
oError:args :
-> VALTYPE: L VALUE: .T.
-> VALTYPE: U VALUE: NIL
-> VALTYPE: C VALUE: \\TC-WorkSvr\c\ADS\TC-Adress\adressen.dbf
-> VALTYPE: U VALUE: NIL
-> VALTYPE: L VALUE: .F.
-> VALTYPE: L VALUE: .F.
oError:canDefault : J
oError:canRetry : J
oError:canSubstitute: N
oError:cargo : NIL
oError:description : Datei kann nicht erzeugt werden
oError:filename :
oError:genCode : 70
oError:operation : DbUseArea
oError:osCode : 0
oError:severity : 2
oError:subCode : 8018
oError:subSystem : BASE
oError:thread : 1
oError:tries : 1

Über einen Tipp würde ich mich freuen..
Schönes WE
volkrrr
Cut&Paste-Entwickler
Cut&Paste-Entwickler
 
Beiträge: 26
Registriert: Mo, 20. Feb 2006 16:17

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon Wolfgang Ciriack » Do, 28. Mai 2015 14:57

Hallo,
bin gerade dabei, den ADS zu testen.
Aus "historischen" Gründen benutze ich in meinem Programm CDX mit DBT-Dateien (vermutlich vor 12 Jahren wg. der Unterscheidung in Indexen auf Groß-/Kleinschreibung), das wird scheinbar von ADS nicht unterstützt, will bei ADS_TBL_MODE=ADSDBE_CDX immer FTP-Dateien öffnen.
Hier meine bisherigen Datenbankeinstellungen:
Code: Alles auswählen
IF DbeBuild( "DBFCDX", "DBFDBE", "CDXDBE" )
  DbeSetDefault("DBFCDX")
  DbeInfo(COMPONENT_ORDER,CDXDBE_LOCKRETRY,20000000)
  DbeInfo(COMPONENT_ORDER,CDXDBE_LOCKDELAY,10)
  DbeInfo( COMPONENT_ORDER, CDXDBE_MODE, CDXDBE_COMIX )
  DbeInfo(COMPONENT_ORDER, DBE_LOCKMODE, LOCKING_EXTENDED)
  DbeInfo(COMPONENT_ORDER, CDXDBE_LIFETIME, 0)

Kann man das irgenwie beeinflussen, was der ADS nimmt ?
Oder wie sollte man umstellen, so dass man wahlweise ADS/CDX benutzen kann ?
FOXDBE ? Was muss man beachten ? Evtl. Probleme danach bei Memodateien oder bei Indexsuchen ?
Für Anregungen/Hilfen wäre ich sehr dankbar.
Viele Grüße
Wolfgang
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 2227
Registriert: Sa, 24. Sep 2005 8:37
Wohnort: Berlin

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon UliTs » Do, 28. Mai 2015 20:42

Hallo Wolfgang,

am Besten versuchst Du zunächst, ob Du Deine Tabellen mit CDX-Index mit Hilfe des Data Architecten (ARC) öffnen kannst. Dann bist Du Dir schon einmal sicher, dass es grundsätzlich geht.

Uli
-------
Mitglied XuG Cologne
Mitglied XuG Osnabrück
UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 2370
Registriert: Fr, 10. Feb 2006 9:51
Wohnort: Aachen

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon nightcrawler » Fr, 29. Mai 2015 9:45

Wolfgang Ciriack hat geschrieben:Kann man das irgenwie beeinflussen, was der ADS nimmt?

Nein, ADS nimmt immer die Standard-Index- und Memodateien:
ADT/ADI/ADM
DBF/CDX/FPT
DBF/NTX/DBT
--
Joachim
Joachim Dürr Softwareengineering
https://www.jd-engineering.de
Benutzeravatar
nightcrawler
Rekursionen-Architekt
Rekursionen-Architekt
 
Beiträge: 257
Registriert: Di, 24. Apr 2012 15:33
Wohnort: 72181 Starzach

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon Wolfgang Ciriack » Fr, 29. Mai 2015 18:27

Ok, dann werde ich meine Datenbanken mal nach Fox umsetzen.
Viele Grüße
Wolfgang
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 2227
Registriert: Sa, 24. Sep 2005 8:37
Wohnort: Berlin

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon UliTs » Sa, 30. Mai 2015 5:15

Wolfgang Ciriack hat geschrieben:Ok, dann werde ich meine Datenbanken mal nach Fox umsetzen.

Ich wuerde mit dem ADS DBF/Cdx oder ADT/Adi einsetzen.
Was fuer einen Sinn hattest Du bei einer Kombination ADT/Cdx gesehen?
-------
Mitglied XuG Cologne
Mitglied XuG Osnabrück
UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 2370
Registriert: Fr, 10. Feb 2006 9:51
Wohnort: Aachen

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon Wolfgang Ciriack » Sa, 30. Mai 2015 6:14

Hallo Uli,
von ADT/CDX hatte ich nichts geschrieben (ADS/CDX).
Meine Annahme war, ich könnte mit meiner Kombination von DBF,DBT,CDX einfach auf den ADS mit CDX umsteigen.
Viele Grüße
Wolfgang
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 2227
Registriert: Sa, 24. Sep 2005 8:37
Wohnort: Berlin

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon UliTs » Sa, 30. Mai 2015 6:34

Hallo Wolfgang,

danke für die Info.
Im allerersten Beitrag hattest Du von "DBFs mit NTX-Dateien auf ADS mit CDX umstellen" gesprochen. Da macht es ja sowieso Sinn auch DBF/DBT/NTX auf DBF/FPT/CDX umzustellen.

"Ohne CDX kann ich ja die SQL-Eigenschaften von ADS nicht nutzen." Das ist nicht ganz richtig: zusammen mit einem Data Dictionary kann man auch bei NTX-Indizes die SQL-Eigenschaften nutzen, obwohl dies offiziell nicht unterstützt wird (würde ich deshalb auch nicht machen).

Uli
-------
Mitglied XuG Cologne
Mitglied XuG Osnabrück
UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 2370
Registriert: Fr, 10. Feb 2006 9:51
Wohnort: Aachen

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon Jan » Sa, 30. Mai 2015 7:02

Ich bin bei meinem Kunden auf FOXCDX umgestiegen, weil der ADS nicht mehr als 20 ntx je dbf unterstützt. Mehr als 20 Tags in einer cdx aber sehr wohl. Und da die mehrere dbf mit teilweise bis zu 24 Indizee haben ... Was mir nur zugute kam, ich wollte ohnehin FOXCDX haben, weil ich das stabiler und wesentlich praktischer finde.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Foren-Administrator
Foren-Administrator
 
Beiträge: 11624
Registriert: Fr, 23. Sep 2005 17:23
Wohnort: 49328 Melle

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon Wolfgang Ciriack » Sa, 30. Mai 2015 11:47

Ja, CDX mit mehreren Tags habe ich ja auch, wobei ich wie empfohlen, maximal 5 tags pro Indexdatei benutze.
Mein Problem ist/war ja nur die Kombination DBF/DBT/CDX.
@Jan,
benutzt du foxspezifische Einstellungen in deiner FOXCDX ?
Viele Grüße
Wolfgang
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 2227
Registriert: Sa, 24. Sep 2005 8:37
Wohnort: Berlin

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon Jan » Sa, 30. Mai 2015 12:43

Hallo Wolfgang,

in meinen eigenen Projekten benenne ich manchmal die Dateiendungen um. Und natürlich nutze ich LockingExtended.

Für einen Kunden lauten die Einstellungen so (übernommen von einem Co-Entwickler):
Code: Alles auswählen
DbeInfo(COMPONENT_DATA, DBFDBE_LIFETIME, 0)                                                        // Verweildauer von Records im lokalen Cache
DbeInfo(COMPONENT_ORDER, DBE_LOCKMODE, LOCKING_EXTENDED)                       

DbeInfo(COMPONENT_DATA, FOXDBE_LIFETIME, 0)                                                        // Verweildauer von Records im lokalen Cache
DbeInfo(COMPONENT_ORDER, FOXDBE_LOCKMODE, LOCKING_EXTENDED)                     
//DbeInfo(COMPONENT_DATA, DBFDBE_ANSI, .T.)

Die Lifetime-Einstellungen wegen Netzwerk.

Wieso nur 5 Tags je Index? Da hab ich mich noch nie drauf beschränkt. Und auch noch nie Probleme mit gehabt. Ich mach mir das immer enifach - der Index heißt wie die dbf. Dann steht im Explorer immer alles schön beisammen.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Foren-Administrator
Foren-Administrator
 
Beiträge: 11624
Registriert: Fr, 23. Sep 2005 17:23
Wohnort: 49328 Melle

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon Wolfgang Ciriack » Sa, 30. Mai 2015 16:27

Hallo Jan,
nein Probleme sollte das mit mehr Tags nicht geben, es ist nur eine Empfehlung für Performance-Steigerung.
Ich habe das vor Urzeiten mal aus dem Alaska-Forum, jetzt habe ich es nochmal im ADS Helpfile gelesen.
Lies dazu mal im ADS-Server help file den Abschnitt "Generell Performance Factors", daraus wir das ganz gut klar.

Danke für die Einstellungen, das sind ja die, die ich auch für die DBFCDX genommen habe.
Viele Grüße
Wolfgang
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 2227
Registriert: Sa, 24. Sep 2005 8:37
Wohnort: Berlin

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon volkrrr » Mo, 08. Feb 2016 11:50

Hallo,
ich möchte diesen Vorgang nochmals aufleben lassen. Obige Infos haben mir nur bedingt geholfen und ich habe das Ganze zurückgestellt. Jetzt muss ich mich wieder diesem Problem widmen. Oben stand:

UliTs hat geschrieben:Hallo Wolfgang,

danke für die Info.
Im allerersten Beitrag hattest Du von "DBFs mit NTX-Dateien auf ADS mit CDX umstellen" gesprochen. Da macht es ja sowieso Sinn auch DBF/DBT/NTX auf DBF/FPT/CDX umzustellen.

"Ohne CDX kann ich ja die SQL-Eigenschaften von ADS nicht nutzen." Das ist nicht ganz richtig: zusammen mit einem Data Dictionary kann man auch bei NTX-Indizes die SQL-Eigenschaften nutzen, obwohl dies offiziell nicht unterstützt wird (würde ich deshalb auch nicht machen).

Uli


Das habe ich gemacht: Ich bin mit den DBF auf Foxpro umgestiegen, kann aus dem Quelltext CDX erzeugen (mit mehreren Suchmgl.). Das alles ohne ADS. Jetzt habe ich die FoxPro - Datenbank ins ADS kopiert und mit dem Architeckt 11.00.0 geöffnet, klappt. SQL abgesetzt klappt auch. Jetzt will ich mit dem XBase - Programm auf die Datenbank zugreifen und das klappt nicht. Vermutlich baue ich die DBE falsch zusammen oder mir fehlt eine Einstellung. Meine sieht so aus:

Code: Alles auswählen
IF ! DbeLoad( "ADSDBE" )
         confirmbox(,"Unable to load ADSDBE")
         quit
      ENDIF

      IF ! DbeLoad( "CDXDBE", .t.)
         Alert( "CDXDBE" + MSG_DBE_NOT_LOADED , {"OK"} )
      ENDIF

      IF ! DbeBuild( "ADSDBE_CDX","ADSDBE","CDXDBE"  )
         Alert( "ADSDBE_CDX" + MSG_DBE_NOT_CREATED , {"OK"} )
      ENDIF
   SET DEFAULT TO "\\192.168.0.12\c\ADS\Adressen"
   public oSession := DacSession():New( "DBE=ADSDBE;SERVER=\\192.168.0.12\c\ADS\Adressen" )
   IF .NOT. oSession:isConnected()
       Confirmbox(,"Unable to establish connection to ADS (1)"+str(oSession:getLastError()))
       QUIT
   ELSE
      Confirmbox(,"Connected to ADS")
   ENDIF
   DbeSetDefault("ADSDBE_CDX")
   DbeInfo( COMPONENT_DATA , ADSDBE_TBL_MODE, ADSDBE_CDX )
   DbeInfo( COMPONENT_ORDER, ADSDBE_TBL_MODE, ADSDBE_CDX )

öffne ich die Datenbank jetzt mit use adressen exclusive kommt ein Fehler:
oError:args :
-> VALTYPE: L VALUE: .T.
-> VALTYPE: U VALUE: NIL
-> VALTYPE: C VALUE: adressen
-> VALTYPE: C VALUE: ADR
-> VALTYPE: L VALUE: .F.
oError:canDefault : J
oError:canRetry : J
oError:canSubstitute: N
oError:cargo : NIL
oError:description : Datei kann nicht erzeugt werden
oError:filename :
oError:genCode : 70
oError:operation : DbUseArea
oError:osCode : 0
oError:severity : 2
oError:subCode : 8018
oError:subSystem : BASE
oError:thread : 1
oError:tries : 1


Hat einer einen Tipp??? Herzlichen Dank
volkrrr
Cut&Paste-Entwickler
Cut&Paste-Entwickler
 
Beiträge: 26
Registriert: Mo, 20. Feb 2006 16:17

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon UliTs » Mo, 08. Feb 2016 21:22

Hallo Volker,

kannst Du mal den Befehl mit
Code: Alles auswählen
DbUseArea( ... )
angeben, wie Du ihn verwendest?

Uli
-------
Mitglied XuG Cologne
Mitglied XuG Osnabrück
UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 2370
Registriert: Fr, 10. Feb 2006 9:51
Wohnort: Aachen

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon volkrrr » Di, 09. Feb 2016 8:51

Ich habe folgendes versucht:
DbUseArea(.t.,,"Adressen","ADR",.T.)
Dann kommt der Fehler mit "Datei kann nicht erzeugt werden"
DbUseArea(.t.,"ADSDBE_CDX","Adressen","ADR",.T.)
Genau das selbe... läuft ebenfalls in den Fehler
DbUseArea(.t.,"ADSDBE","Adressen","ADR",.T.)
Klappt, möchte ich dann die Adressen.cdx öffnen
OrdListAdd("Adressen","NAME")
sucht er eine Adressen.ntx, das soll es ja nicht sein :(
volkrrr
Cut&Paste-Entwickler
Cut&Paste-Entwickler
 
Beiträge: 26
Registriert: Mo, 20. Feb 2006 16:17

Re: Umstieg DBF/NTX auf ADS/CDX

Beitragvon Wolfgang Ciriack » Di, 09. Feb 2016 9:23

Bist du sicher, das du deine Adressen.dbf auf FOXDBE umgestellt hast ?
Kannst du sie mit DbUseArea(.T.,"FOXCDX",... öffnen ?
Der ADS nutzt
DBF/CDX/FPT
DBF/NTX/DBT
Viele Grüße
Wolfgang
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 2227
Registriert: Sa, 24. Sep 2005 8:37
Wohnort: Berlin

Nächste

Zurück zu ADS

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast