Can not assign designtable from file

I made a csv file from excel. Stored on my local D-drive in the same folder with the dwg where i want to attach the csv file too. When assigning the designtabel to my drawing ( path .csv file on the D-drive ), briscad gives me the can't create file 'explorer/Desktop.ini'( error 3; The system cannot find the path specified ).
Then I saved the dwg file via the library ( now on the C-drive ) and copied the csv file in the same folder of the Library where the dwg is stored. Same error.
What to do to make the cvs file attach to the drawing ?

Comments

  • You don't attach csv to a dwg. You do some thing with it like read each line and do some sort of object creation based on the input.

    Explain more what it is your trying to achieve.

    Please note no need for csv can read direct from Excel.
  • My goal is to make a design table in my block reference and where it shows up under the parameters in the properties panel.

    I followed the steps accordingly https://www.youtube.com/watch?v=K33rXj8cm1s
    1. I made a dwg with 2d geo and dim contrains and some parameters ( flip /strech/refcurves/visibility), the Door.dwg
    2. Then saved it in a folder ( D-drive ) and a test one in the library ( C-drive )
    3. Created an excel file, saved as a csv and xlxs with the new ( fixed ) parameter
    4. Back In the Door.dwg, command; DESIGNTABLE - from file, but getting the error.

    Probably the above is an old method.
    Making an empty designtable in Briscad is really tedious.
    How would you make a designtabel ?
  • Hello.

    The structure of a design table should contain a header and a few rows with values.

    For instance, you could create a csv file - designtable.csv

    Inside, the structure should be similar to this:

    Config,d1,d2
    C1,130,80
    C2,150,100
    C3,200,130

    Then, use the DESIGNTABLE command and select this file.

    Wih the structure above, this operation will create a design table parameter named Config.
    The possible values for this parameter are C1, C2, and C3.

    This parameter has a tree sructure where the numeric parameters are stored.
    With the case above, the parameters created are d1 and d2.

    To make it usable, some other parameters should use d1 and d2 in their expressions.

    Regarding the error message, the next article could be useful.
    https://help.bricsys.com/en-us/document/knowledge-base/troubleshooting/how-to-fix-the-error-cant-create-file-somepath-desktopini?id=165245343924
  • ALANH
    edited April 18
    If I understand correct you have a dynamic door and want to update it using values from a Excel, the 1st step I suggest is get a copy of Lee-mac Dynamic block lisps.

    The simple procedure is insert the block then edit the parameters. I have been using this for years, the image shows a 2 step process insert block the read from the block its visibilty states so user can choose. Same method but update a parameter based on csv file.




    In simple terms it may be like "distance1"= 1250 "Rad1"=820


  • Hi,

    @Virgil. Got things resolved by the drawingpath, but also excel didn't create a correct .csv file. Found this out after opening this in WordPad. Maybe this has to do with the different language sets i got, US/UK and Dutch. But in the end got a functional fixed parameter in the block.

    @Alanh. Something to check out for simplicty and efficiency. Cheers

  • Another thing i encountered is that egnoring overcontraints ( what a lot of the you tubers do ) when creating a parametric block really created failure issues when making refcurves fuzyy. Briscad crashed every time. Building from scratch without overconstraining resolved a the issues.

  • Csv exist in two different style from Excel.

    Simply csv is comma separated variable or depending on where you are in the world it is semicolon ";" separated.

    123,456,789

    123;456;789

    ; thanks to Lee-mac for this defun
    ; www.lee-mac.com

    (defun _csv->lst58 ( str del / pos )
    (if (setq pos (vl-string-position del str))
    (cons (substr str 1 pos) (_csv->lst58 (substr str (+ pos 2))))
    (list str)
    )
    )

    ; thanks to Lee-mac for this defun
    ; www.lee-mac.com
    ; 44 is comma 9 is tab 34 is space 59 is semi colon
    (defun _csv->lst59 ( str / pos )
    (if (setq pos (vl-string-position 59 str))
    (cons (substr str 1 pos) (_csv->lst58 (substr str (+ pos 2))))
    (list str)
    )
    )

    ; thanks to Lee-mac for this defun
    ; www.lee-mac.com
    ; 44 is comma 9 is tab 34 is space 59 is semi colon
    (defun _csv->lst44 ( str / pos )
    (if (setq pos (vl-string-position 44 str))
    (cons (substr str 1 pos) (_csv->lst58 (substr str (+ pos 2))))
    (list str)
    )
    )