I have a small example where you can see that the print and export functions do not work. When I call them from this example, nothing happens and there are no errors and warnings in the debugger console.
While researching HTML in the debugger, I noticed that a print preview window is being created, but it is not visible. If I set it visible and click on the "print" button, then nothing happens.
Version SNAPSHOT_v13.1d_2024-05-23/Pro
index.js
App.jsx
While researching HTML in the debugger, I noticed that a print preview window is being created, but it is not visible. If I set it visible and click on the "print" button, then nothing happens.
Version SNAPSHOT_v13.1d_2024-05-23/Pro
index.js
Code:
import React from 'react'; import ReactDOM from 'react-dom/client'; import App from './App'; const root = ReactDOM.createRoot(document.getElementById('app')); root.render( <App/> );
Code:
import React, { Component } from 'react'; import 'smartclient-pro/release'; import 'smartclient-pro/skins/Graphite'; import { VLayout, DataSource, DSField, ListGrid, LGField, HLayout, Button } from 'smartclient-pro/react'; class App extends Component { constructor(param) { super(param); }; countryData = [ { continent: 'North America', countryName: 'United States', countryCode: 'US', area: 9631420, population: 298444215, gdp: 12360, independence: new Date(1776, 6, 4), government: 'federal republic', government_desc: 2, capital: 'Washington, DC', member_g8: true, article: 'http://en.wikipedia.org/wiki/United_states' }, { continent: 'Asia', countryName: 'China', countryCode: 'CH', area: 9596960, population: 1313973713, gdp: 8859, government: 'Communist state', government_desc: 0, capital: 'Beijing', member_g8: false, article: 'http://en.wikipedia.org/wiki/China' } ]; showPrintPreview = function () { window.isc.Canvas.showPrintPreview(window.countryList); } exportContent = function () { window.isc.Canvas.showPrintPreview(window.countryList); var oldAlternateRecordStyles = window.countryList.alternateRecordStyles; var oldAlternateFieldStyles = window.countryList.alternateFieldStyles; window.countryList.setProperties({ alternateRecordStyles: true, alternateFieldStyles: false }); var settings = { skinName: 'Tahoe', exportFilename: 'export' }; window.isc.RPCManager.exportContent(window.printContainer, settings); window.countryList.delayCall('setProperties', [{ alternateRecordStyles: oldAlternateRecordStyles, alternateFieldStyles: oldAlternateFieldStyles }], 300); } render() { return ( <> <DataSource ID="countryDS" title="countryDS" clientOnly="true" testData={this.countryData}> <fields> <DSField name="countryCode" title="Code" /> <DSField name="countryName" title="Country" /> <DSField name="capital" title="Capital" /> <DSField name="continent" title="Continent" /> </fields> </DataSource> <VLayout ID="printContainer" membersMargin="15"> <ListGrid ID="countryList" width="500" height="425" alternateRecordStyles="true" dataSource="countryDS" autoFetchData="true" showFilterEditor="true" canEdit="true" editEvent="none" > <fields> <LGField name="countryCode" title="Code" width="50" /> <LGField name="countryName" title="Country" /> <LGField name="capital" title="Capital" /> <LGField name="continent" title="Continent" /> </fields> <gridComponents> <value>header</value> <value>filterEditor</value> <value>body</value> </gridComponents> </ListGrid> <HLayout membersMargin="15" > <Button title="print" click={this.showPrintPreview} /> <Button title="export" click={this.exportContent} /> </HLayout> </VLayout> </> ); } } export default App;
Comment