Jump to content

Hugues

Vectorworks, Inc Employee
  • Posts

    1,011
  • Joined

  • Last visited

Posts posted by Hugues

  1. Yes, the format of a database cell is always linked to the database header cell. The height of a database row is linked to the database header row.

    Prior to VW2008, database cells were only selectable as a block. Now with the introduction of single selectable database cells and 2way worksheets, this linkage doesn't make sense anymore.

    Hugues

    NNA

  2. I just want to point out that the Report generator has an option that allow you to append a database to an existing worksheet.

    Clicks on the Options button on the bottom left corner of the Create Report dialog. Now in the options dialog you can change the database placement option to 'Append to existing worksheet' and select the worksheet you'd like to append to.

    Hugues

    NNA

  3. Database cells are different from spreadsheet cells.

    You can't set the height or format for individual database rows. They always have the same height and their format is always linked to that of the database row.

    If you set the height of a database row, all rows in the database will get the same height.

    You may see a database row adjusting to fit the content of a wrapped cell in the worksheet editor. This is confusing.

    This problem will be addressed in a future release.

    Thanks

    Hugues

    NNA

  4. I suspect that your row is locked to a specific value.

    You basically lock a row height by setting the value manually. To unlock it, select the row and go to the row height menu and select "Auto Fit Row Height".

    If that doesn't work, then there is a data corruption somewhere.

    Can you reproduce this problem consistently ?

    Thanks

    Hugues

    NNA

  5. Mike,

    the object name in the Object Info Palette is not part of the Record Format.

    If the names need to be saved in a record, you can edit the record formats and add a field for that.

    If all you need is having them listed in a worksheet, you can add a worksheet column and type "=N" (without the quotes) in the database header.

    Hope it helps.

    Hugues

    NNA

  6. Are you familiar with VectorScript ?

    You can use the CreateWSImage() to place a worksheet in the drawing.

    This is a script for you.

    PROCEDURE PlaceWSInDrawing;

    VAR

    listID: LONGINT; { List ID for worksheet resources }

    listCount,index: LONGINT;

    hWS: HANDLE;

    hImage: HANDLE;

    x,y: REAL; { worksheet image position }

    BEGIN {procedure begin}

    listID := BuildResourceList(18, 0, '', listCount);

    IF listCount > 0 THEN BEGIN

    x := 0;

    y := 0;

    FOR index := 1 TO listCount DO BEGIN

    hWS := GetResourceFromList(listID, index);

    IF ((hWS<>NIL) & (GetType(hWS) = 18)) THEN BEGIN

    hImage := CreateWSImage(hWS, x,y);

    ResetObject(hImage);

    x := x+1;

    y := y-1;

    END;

    END;

    END;

    END;

    RUN(PlaceWSInDrawing);

    Hugues

    NNA

  7. boxjoint, pat and all,

    There is another solution for accessing PIO names that doesn't involve using the VS Plug-in editor or scripting.

    You can do this directly from the worksheet using the Paste Criteria command.

    Proceed as follows:

    - Enter the equal sign in the formula bar

    - Click on the "Paste Criteria..." command in the worksheet menu

    - The Paste Attributes dialogs opens , then click on the 'Custom' button.

    - Now in the Criteria dialog, select the Field Value criterion, pick your PIO field and make sure you set the criteria operator to 'NONE' (third pulldown menu).

    - Click OK and you are done.

    We are well aware that accessing PIO names from the worksheet isn't straightforward and intuitive. This area is on the radar and we are working on better solutions.

    Hugues

    NNA

  8. Hi David,

    RecalculateWS operates on the worksheet object itself not the worksheet image on the drawing. You need to get the worksheet object handle from its image. You do this by calling GetWSFromImage

    Your script should work if you modify your procedure like this:

    PROCEDURE RecalcWS(h:HANDLE);

    VAR

    h2 : HANDLE;

    BEGIN

    wsH := GetWSFromImage(h);

    RecalculateWS(h2);

    SetSelect(h);

    END;

    Hugues

    NNA

×
×
  • Create New...