• Does AppendDelimited needs to have installed some specific RDD or DLL f

    From juan.chavarria.grillo@gmail.com@21:1/5 to All on Fri Mar 26 14:37:54 2021
    Hi:

    On mi network I run an aplication using AppendDelimited and it works fine.

    But when I try to run it on my costumer network the folowing instruction returns false:

    ORIGEN:=DbServer{aTmp,DBEXCLUSIVE}
    IF !ORIGEN:AppendDelimited(CSV,separador) // Si no puede importar los archivos desde el archivo de AX avisa y termina.
    WarningBox{,"Actualizar artículos desde el sistema AX:","No fue posible importar los datos desde "+CSV}:Show()
    RETURN nil
    ENDIF
    Any help would be appreciated.
    Thanks,
    Juan

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Steve@21:1/5 to juan.chava...@gmail.com on Sat Mar 27 00:50:40 2021
    On Friday, March 26, 2021 at 9:37:54 PM UTC, juan.chava...@gmail.com wrote:
    Hi:

    On mi network I run an aplication using AppendDelimited and it works fine.

    But when I try to run it on my costumer network the folowing instruction returns false:

    ORIGEN:=DbServer{aTmp,DBEXCLUSIVE}
    IF !ORIGEN:AppendDelimited(CSV,separador) // Si no puede importar los archivos desde el archivo de AX avisa y termina.
    WarningBox{,"Actualizar artículos desde el sistema AX:","No fue posible importar los datos desde "+CSV}:Show()
    RETURN nil
    ENDIF
    Any help would be appreciated.
    Thanks,
    Juan

    Hi Juan,
    The simple answer to your question is yes you do need to deploy additional files to your customer. I'm using VO2.8 and in the Redist subfolder there is a file called Redist.txt that shows what additional DLL/RDD's you have to deploy. Here are the
    contents of that file for VO2.8 and look towards the end of the RDDs section and you will see what you need.

    Regards
    Steve. +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    Visual Objects 2.8 Redistributable Files

    The DLLs and RDDs in this directory may be redistributed as necessary along with
    your Visual Objects-created applications.

    The simplest way to deploy a Visual Objects 2.8 application or DLL is to include the necessary dependent DLLs and/or RDDs in the same directory.


    Runtime DLLs
    ============
    vo28run.dll VO Runtime. Used by all runtime DLLs
    vo28orun.dll OLE Runtime. Used by OLE and GUI

    VO28GUI.DLL GUI Classes (needs VO28OLE, VO28ORUN and VO28SYS)
    VO28INET.DLL Internet classes
    VO28ISRV.DLL Internet server classes
    vo28nat.dll Nation modules (US English)
    VO28OLE.DLL OLE Classes (needs VO28SYS and VO28ORUN)
    VO28RDD.DLL RDD Classes (needs VO28SYS)
    VO28REP.DLL Report Classes (needs VO28GUI and VO28SYS)
    VO28SQL.DLL SQL Classes (needs VO28SYS)
    VO28SYS.DLL System Classes


    RDDs
    ====
    Cavodbf.rdd DBF Rdd (used by most of the RDDs)
    dbfblob.rdd DBFBLOB RDD (for standalone blobs)
    dbfcdx.rdd DBFCDX RDD (Adds FPT support to _DBFCDX RDD)
    Dbfmdx.rdd DBFMDX RDD (dBASE IV indexes & memos. Needs CAVODBF.RDD) dbfmemo.rdd DBFMEMO RDD (Added DBV support to DBFNTX RDD)
    Dbfntx.rdd DBFNTX RDD (Clipper indexes. Needs CAVODBF.RDD)
    _dbfcdx.rdd _DBFCDX Rdd (Added CDX support to CAVODBF.RDD)
    Delim.rdd RDD to read comma delimited files
    Sdf.rdd RDD to read SDF formatted files



    Support DLLs
    ============

    DIB..() functions
    -----------------
    CAPAINT.DLL


    DataBrowser Class
    -----------------
    CATO3CNT.DLL
    CATO3DAT.DLL
    CATO3MSK.DLL
    CATO3NBR.DLL
    CATO3SBR.DLL
    CATO3TBR.DLL
    CATO3TIM.DLL


    Splitwindow and Splitview
    -------------------------
    CATO3SPL.DLL

    General
    -------
    MSVCRT.DLL Visual C runtime. Used by the CATO.. DLLs ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From JohnMartens@21:1/5 to All on Sat Mar 27 08:22:53 2021
    Hi Juan,

    To have a good check on the file stuct I always opened an CSV import
    file and process it line by line so you can check on the numer of
    fields, type of field, check the content, do the right type check etc
    etc before putting the data in the data base.

    More work that one line of append delimited but in the end you will need
    the checks anyway

    If you can get a DBF file as import in the right structure with sure
    checks on the fields one can just loop trough the import file and copy
    the data to the main DBF.

    Here some lines of code that could help

    John


    get filename by user when a button on a window is clicked
    oOpenDialog := OpenDialog{SELF,''}
    oOpenDialog:InitialDirectory := cDirImport
    oOpenDialog:SetFilter({"*.CSV"}, {"My import file type", 1)
    oOpenDialog:Show()
    SELF:cFileNm := oOpenDialog:FileName


    Open the file
    SELF:prtImportFile := FOpen(SELF:cFileNm)
    IF SELF:prtImportFile = F_ERROR
    lResult := FALSE
    ELSE
    cLine := FReadLine(SELF:prtImportFile,1000) // Headline
    ENDIF


    Check the headline (if there is)

    Read the fields
    cLine := FReadLine(SELF:prtImportFile,1000)
    cField1 := ReadLeftFromMyDelimiter(cLine)
    cLine := ReadRightFromMyDelimiter(cLine)
    cField2 := ReadLeftFromMyDelimiter(cLine)
    etc etc

    Check the fileds one by one

    Loop through the import file until you get an empty line

    Close the file
    IF FClose(SELF:prtImportFile)
    lResult := TRUE
    ELSE
    // Errormsg
    ENDIF



    Op 26-3-2021 om 22:37 schreef juan.chava...@gmail.com:
    Hi:

    On mi network I run an aplication using AppendDelimited and it works fine.

    But when I try to run it on my costumer network the folowing instruction returns false:

    ORIGEN:=DbServer{aTmp,DBEXCLUSIVE}
    IF !ORIGEN:AppendDelimited(CSV,separador) // Si no puede importar los archivos desde el archivo de AX avisa y termina.
    WarningBox{,"Actualizar artículos desde el sistema AX:","No fue posible importar los datos desde "+CSV}:Show()
    RETURN nil
    ENDIF
    Any help would be appreciated.
    Thanks,
    Juan



    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred Killet@21:1/5 to All on Sat Apr 3 09:47:31 2021
    Thank you, Steve!
    This list was not in my directory C:\cavo28\Redist. I added your list to
    that directory.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)