Skip to content

Latest commit

 

History

History
117 lines (92 loc) · 3.78 KB

README.md

File metadata and controls

117 lines (92 loc) · 3.78 KB

A Grid Widget Plugin for BBj

BBj v19.11 BBj sam required BBjGridExWidget is released under the MIT license. PRs welcome!

A Feature-rich grid component for BBj Based on HTML and JavaScript. It works and loads quickly in GUI and BUI , optimized for large data sets and uses the BBjHtmlView Leveraging Chromium engine in GUI.

☑️ Included Features:

  • Column setup and formatting
  • Change column order with Drag & Drop
  • Freeze Columns to the left or right side
  • Filtering / Searching by column or globally
  • Conditional styling
  • Column Groups
  • Save and restore layout
  • Themes
  • Icons and Images
  • Custom cell renderers
  • User interface translations, customizable
  • Multi-Selection, Single Selection, Checkbox Selection
  • Basic Cell Editing (Work in progress, Goal: Complete editing support for BBj 20)

Enhanced Grid:

  • Additional functionality
  • Incremental surcharge to SAM
  • contact your BASIS Sales Rep for details

Features:

  • Slider menu:
    • toggle column visibility
    • create row groups (hierarchy view)
    • define aggregation
    • define pivot tables
  • Tree Data
  • Status Bar showing row counts, selection, etc.
  • Custom Context Menus
  • Ad-hoc Charting
  • Data Export

🚀 How to install

💻 Example

? 'HIDE'

use ::BBjGridExWidget/BBjGridExWidget.bbj::BBjGridExWidget
use com.basiscomponents.db.ResultSet
use com.basiscomponents.bc.SqlQueryBC

declare auto BBjTopLevelWindow wnd!
wnd! = BBjAPI().openSysGui("X0").addWindow(10,10,800,600,"Simple CD-Store Demo")
wnd!.setCallback(BBjAPI.ON_CLOSE,"byebye")
wnd!.setCallback(BBjAPI.ON_RESIZE,"resize")

gosub main
process_events

main:
  declare SqlQueryBC sbc!
  declare ResultSet rs!
  declare BBjGridExWidget grid!
  
  sbc! = new SqlQueryBC(BBjAPI().getJDBCConnection("CDStore"))
  rs! = sbc!.retrieve("SELECT  * FROM CDINVENTORY")

  grid! = new BBjGridExWidget(wnd!,100,0,0,800,600)
  grid!.setData(rs!)
return

resize:
  ev! = BBjAPI().getLastEvent()
  w=ev!.getWidth()
  h=ev!.getHeight()
  grid!.setSize(w,h)
return

byebye:
bye

🤝 How to Contribute

Whether you're helping us fix bugs, improve the docs, or spread the word, we'd love to have you as part of the BBjGridExWidget project! 💪💜

📝 License

Licensed under the MIT License.

🔗 Documentation: