Skip to content

Commit 754f7aa

Browse files
committed
FS#9099
Do not send a fetch request, in case dataprovider name is null.
1 parent f8f7b36 commit 754f7aa

File tree

3 files changed

+53
-47
lines changed

3 files changed

+53
-47
lines changed

src/main/components/editors/linked/UIEditorLinked.tsx

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -124,24 +124,26 @@ export function fetchLinkedRefDatabook(
124124
name?: string,
125125
decreaseCallback?: Function
126126
) {
127-
const refDataBookInfo = contentStore.getDataBook(screenName, databook);
128-
if (selectedRecord !== undefined
129-
&& (displayCol || concatMask)
130-
&& (!refDataBookInfo?.data)
131-
&& !server.missingDataFetches.includes(databook)) {
132-
server.missingDataFetches.push(databook);
133-
const fetchReq = createFetchRequest();
134-
fetchReq.dataProvider = databook;
135-
fetchReq.fromRow = 0;
136-
fetchReq.rowCount = 100;
137-
if (!refDataBookInfo?.metaData) {
138-
fetchReq.includeMetaData = true;
139-
}
140-
if (refDataBookInfo?.isAllFetched) {
141-
refDataBookInfo.isAllFetched = undefined;
127+
if (databook) {
128+
const refDataBookInfo = contentStore.getDataBook(screenName, databook);
129+
if (selectedRecord !== undefined
130+
&& (displayCol || concatMask)
131+
&& (!refDataBookInfo?.data)
132+
&& !server.missingDataFetches.includes(databook)) {
133+
server.missingDataFetches.push(databook);
134+
const fetchReq = createFetchRequest();
135+
fetchReq.dataProvider = databook;
136+
fetchReq.fromRow = 0;
137+
fetchReq.rowCount = 100;
138+
if (!refDataBookInfo?.metaData) {
139+
fetchReq.includeMetaData = true;
140+
}
141+
if (refDataBookInfo?.isAllFetched) {
142+
refDataBookInfo.isAllFetched = undefined;
143+
}
144+
fetchReq.screenName = screenName;
145+
server.sendRequest(fetchReq, REQUEST_KEYWORDS.FETCH).then(() => decreaseCallback ? decreaseCallback(databook) : undefined)
142146
}
143-
fetchReq.screenName = screenName;
144-
server.sendRequest(fetchReq, REQUEST_KEYWORDS.FETCH).then(() => decreaseCallback ? decreaseCallback(databook) : undefined)
145147
}
146148
}
147149

src/main/components/table/UITable.tsx

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1295,7 +1295,7 @@ const UITable: FC<TableProps & IExtendableTable & IComponentConstants> = (props)
12951295
) {
12961296
last = Math.max(first, last);
12971297
//setListLoading(true);
1298-
if((providerData.length <= last) && !props.context.contentStore.getDataBook(screenName, props.dataBook)?.isAllFetched) {
1298+
if(props.dataBook && (providerData.length <= last) && !props.context.contentStore.getDataBook(screenName, props.dataBook)?.isAllFetched) {
12991299
const fetchReq = createFetchRequest();
13001300
fetchReq.dataProvider = props.dataBook;
13011301
fetchReq.fromRow = providerData.length;
@@ -1666,22 +1666,24 @@ width: ${width}px !important; max-width: ${width}px !important; }`;
16661666

16671667
// initially fetch more rows until you have 100
16681668
useEffect(() => {
1669-
const dataBook = props.context.contentStore.getDataBook(screenName, props.dataBook)
1670-
if (!dataBook?.isAllFetched && providerData.length < rows) {
1671-
const fetchReq = createFetchRequest();
1672-
fetchReq.dataProvider = props.dataBook;
1673-
fetchReq.fromRow = providerData.length;
1674-
fetchReq.rowCount = 100;
1675-
const server = props.context.server;
1676-
if (!dataBook?.metaData) {
1677-
fetchReq.includeMetaData = true;
1669+
if (props.dataBook) {
1670+
const dataBook = props.context.contentStore.getDataBook(screenName, props.dataBook)
1671+
if (!dataBook?.isAllFetched && providerData.length < rows) {
1672+
const fetchReq = createFetchRequest();
1673+
fetchReq.dataProvider = props.dataBook;
1674+
fetchReq.fromRow = providerData.length;
1675+
fetchReq.rowCount = 100;
1676+
const server = props.context.server;
1677+
if (!dataBook?.metaData) {
1678+
fetchReq.includeMetaData = true;
1679+
}
1680+
if (!dataBook?.data && !server.missingDataFetches.includes(props.dataBook)) {
1681+
server.missingDataFetches.push(props.dataBook);
1682+
showTopBar(server.sendRequest(fetchReq, REQUEST_KEYWORDS.FETCH), server.topbar);
1683+
} else if(dataBook?.data) {
1684+
showTopBar(server.sendRequest(fetchReq, REQUEST_KEYWORDS.FETCH), server.topbar);
1685+
}
16781686
}
1679-
if (!dataBook?.data && !server.missingDataFetches.includes(props.dataBook)) {
1680-
server.missingDataFetches.push(props.dataBook);
1681-
showTopBar(server.sendRequest(fetchReq, REQUEST_KEYWORDS.FETCH), server.topbar);
1682-
} else if(dataBook?.data) {
1683-
showTopBar(server.sendRequest(fetchReq, REQUEST_KEYWORDS.FETCH), server.topbar);
1684-
}
16851687
}
16861688
}, [providerData, screenName, props.dataBook])
16871689

src/main/components/tree/UITree.tsx

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -413,20 +413,22 @@ const UITree: FC<ITree & IExtendableTree & IComponentConstants> = (props) => {
413413
* @returns the datarows of the root page
414414
*/
415415
const fetchRoot = async () => {
416-
const fetchReq = createFetchRequest();
417-
fetchReq.dataProvider = firstLvlDataBook;
418-
fetchReq.fromRow = 0;
419-
fetchReq.rowCount = -1;
420-
fetchReq.filter = {
421-
columnNames: [],
422-
values: []
423-
}
424-
fetchReq.rootKey = true;
425-
const fetchResponse = await showTopBar(props.context.server.sendRequest(fetchReq, REQUEST_KEYWORDS.FETCH), props.topbar);
426-
if (fetchResponse && fetchResponse.length) {
427-
const rootKey = props.context.contentStore.getDataBook(screenName, firstLvlDataBook)?.rootKey;
428-
if (rootKey) {
429-
return providedData.get(firstLvlDataBook).get(rootKey)
416+
if (firstLvlDataBook) {
417+
const fetchReq = createFetchRequest();
418+
fetchReq.dataProvider = firstLvlDataBook;
419+
fetchReq.fromRow = 0;
420+
fetchReq.rowCount = -1;
421+
fetchReq.filter = {
422+
columnNames: [],
423+
values: []
424+
}
425+
fetchReq.rootKey = true;
426+
const fetchResponse = await showTopBar(props.context.server.sendRequest(fetchReq, REQUEST_KEYWORDS.FETCH), props.topbar);
427+
if (fetchResponse && fetchResponse.length) {
428+
const rootKey = props.context.contentStore.getDataBook(screenName, firstLvlDataBook)?.rootKey;
429+
if (rootKey) {
430+
return providedData.get(firstLvlDataBook).get(rootKey)
431+
}
430432
}
431433
}
432434
return []

0 commit comments

Comments
 (0)