Re: Datagrid internal error
On 8/10/2022 5:02 PM, Trevor DeVore via use-livecode wrote: 32,767 is the max for width as well. If there are enough columns it is possible that the DataGrid is rendering a group that exceeds this limit and hence the error. The DataGrid works around the limit when rendering rows, but not when rendering columns. I suppose a quick test would be to create a DataGrid with 330 columns that are at least 100 pixels wide and see if you get the same error. So I created 2 test stacks with a Datagrid and a button to set the number of columns and populate a row of data. One stack I did in Livecode 4.6.4 (the oldest I have) and one I built in Livecode 9.6.8 to see if there were differences in the handling of the error condition between versions of the Datagrid object. [Note: Some of the Datagrids in our app are from LC 4.6.4 and we've never removed them and replaced them with newer versions and I don't believe Livecode does anything to automatically update the Datagrid objects in an old stack when opened in a new version of Livecode] Under LC464, trying to create a number of columns with default widths that would exceed the 32,767 pixel width limit of the group object (using 330 columns with a default width of 100px or 33,000 pixels) produces: 1) A blank header (no columns) 2) Visible column for data, where only the visible columns of the first row (8 columns) are populated with data and when you scroll to the right, all remaining column of the 1st row of data are empty. The grid is scrollable horizontally to what looks to be around 320-330 columns. Using 320 columns, works as expected. 325 works; 327 works. 328 only produces 327 columns in the header with 327 values for data in the first row. 329 produces a header with 329 columns and no data is rendered in the 1st row. Under LC968, the LC968 test version of this with 330 columns produces: 1) Columns headers 1 to 8 (the header that are the visible width of the Datagrid) 2) No data is rendered and the grid is not scrollable. Using 320 columns, works as expected. 325 works. 327 works. 328 produces 327 columns in the header and no data in the first row. 329 is the same as 330 (only 8 visible column headers and no data and no scrolling). So, the results are subtly different from Datagrids from LC4.6.4 and Datagrids from LC9.6.8, but both fail to do what a user would expect without any visible errors. However, having the number of columns exceed the width of a Livecode group object in pixels does not seem to be the source of the error I am trying to track down which was: Line 139 set the dgProp["columns"] of grp "rwMatrixObj_DataGrid" to tColumnNames tColumnNames is a variable containing a list of text lines that are customer entered column names, so they could be ANYTHING (up to 255 chars, no control characters, including DEL (127)) that a user could type or paste into a field, including words in any language using Unicode. As the executionContexts data does not contain the actual values of the variable tColumnNames when the error occurs AND (for reasons) I can not get the data from the customer, does ANYONE have any idea what tColumnNames might contain that could produce the error(s) show below? Technical information: Property: value is not a number: (Line 11, column 1) Object: can't set object property: (Line 11, column 5) set: can't set property: (Line 11, column 1) Handler: error in statement: LayoutControl (Line 11, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDefaultHeaderButtonBehavior" - repeat: error in statement: (Line 5066, column 1) Handler: error in statement: _table.ResizeHeaders (Line 5052, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - Handler: error in statement: _table.ResizeColumns (Line 4967, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - Handler: error in statement: _table.CreateColumns (Line 4737, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - Handler: error in statement: _table.RegenerateColumns (Line 4538, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - switch: error in statement: (Line 6150, column 1) Handler: error in statement: dgProps (Line 5553, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - set: can't set property: (Line 5529, column 1) Handler: error in statement: dgProp (Line 5529, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - set: can't set property: (Line 139, column 1) if-then: error in statement: (Line 139, column 1) Handler: error in statement: populateMe (Line 138, column 1) Object: group "Table" of card "FrequencyReport" of stack "FreqReport.rwtl" Object ID: group id 1162 of card id 1002 of stack "/Applications/HyperRESEARCH 4.5.4/Components/Tools/FreqReport.rwtl" ___ use-livecode mailing list
Re: Datagrid internal error
On 8/10/2022 5:02 PM, Trevor DeVore via use-livecode wrote: 32,767 is the max for width as well. If there are enough columns it is possible that the DataGrid is rendering a group that exceeds this limit and hence the error. The DataGrid works around the limit when rendering rows, but not when rendering columns. I suppose a quick test would be to create a DataGrid with 330 columns that are at least 100 pixels wide and see if you get the same error. Thank you! ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
Re: Datagrid internal error
I do appreciate the responses. My question was not about the number of records, but about the number of COLUMNS and whether there is any practical or known limit. When my code is setting the column names, that list comes from customer entered data. I know that each name is less than 255 characters and restricts entry of certain characters (previously listed) such as comma, [ ], etc. How many names is unknown. In this specific case of the error I reported, the customer is not in a position to be able to help much (if at all). Since it is customer data dependent, we are not able to reproduce the error in the IDE. SO my very specific questions was: Has any one seen an error like the one I reported (copied again below) OR know of any issues/limits when setting the dgProp["columns"] property of a Datagrid? A customer encountered the following execution error (below) in our app (built on Livecode 9.6.7, MacOS 12.5). This error is occurring in the scripts for the Datagrid itself, rather than our code. At the end, it is one of our handler, "populateMe", where line 139 is where the error starts. Line 139 set the dgProp["columns"] of grp "rwMatrixObj_DataGrid" to tColumnNames tColumnNames is a variable containing a list of text lines that are customer entered column names, so they could be ANYTHING (up to 255 chars, no control characters, including DEL (127)) that a user could type or paste into a field, including words in any language using Unicode. As the executionContexts data does not contain the actual values of the variable tColumnNames when the error occurs, does ANYONE have any idea what tColumnNames might contain that could produce the error(s) show below? Technical information: Property: value is not a number: (Line 11, column 1) Object: can't set object property: (Line 11, column 5) set: can't set property: (Line 11, column 1) Handler: error in statement: LayoutControl (Line 11, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDefaultHeaderButtonBehavior" - repeat: error in statement: (Line 5066, column 1) Handler: error in statement: _table.ResizeHeaders (Line 5052, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - Handler: error in statement: _table.ResizeColumns (Line 4967, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - Handler: error in statement: _table.CreateColumns (Line 4737, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - Handler: error in statement: _table.RegenerateColumns (Line 4538, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - switch: error in statement: (Line 6150, column 1) Handler: error in statement: dgProps (Line 5553, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - set: can't set property: (Line 5529, column 1) Handler: error in statement: dgProp (Line 5529, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - set: can't set property: (Line 139, column 1) if-then: error in statement: (Line 139, column 1) Handler: error in statement: populateMe (Line 138, column 1) Object: group "Table" of card "FrequencyReport" of stack "FreqReport.rwtl" Object ID: group id 1162 of card id 1002 of stack "/Applications/HyperRESEARCH 4.5.4/Components/Tools/FreqReport.rwtl" ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
Re: Datagrid internal error
32,767 is the max for width as well. If there are enough columns it is possible that the DataGrid is rendering a group that exceeds this limit and hence the error. The DataGrid works around the limit when rendering rows, but not when rendering columns. I suppose a quick test would be to create a DataGrid with 330 columns that are at least 100 pixels wide and see if you get the same error. -- Trevor DeVore ScreenSteps On Mon, Aug 8, 2022 at 12:36 PM Ralph DiMola via use-livecode < use-livecode@lists.runrev.com> wrote: > Paul, > > The max height of a field is 32,767 pixels. This can be hard to quantify > especially on mobile with the cornucopia of screen resolutions. I would > imagine that this limit also applies to groups as well. I got bit on this > when the app worked in the IDE but failed on some devices. > > Ralph DiMola > IT Director > Evergreen Information Services > rdim...@evergreeninfo.net > > > -Original Message- > From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On > Behalf > Of Paul Dupuis via use-livecode > Sent: Monday, August 08, 2022 12:39 PM > To: use-livecode@lists.runrev.com > Cc: Paul Dupuis > Subject: Re: Datagrid internal error > > On 8/8/2022 12:26 PM, Paul Dupuis via use-livecode wrote: > > A customer encountered the following execution error (below) in our > > app (built on Livecode 9.6.7, MacOS 12.5). This error is occurring in > > the scrips for the Datagrid itself, rather than our code. At the end, > > it is one of our handler, "populateMe", where line 139 is where the > > error starts. > > Line 139 set the dgProp["columns"] of grp "rwMatrixObj_DataGrid" to > > tColumnNames > > > > For example, some information from the customer suggest they are working > with a VERY large dataset, so the length of the list in TColumnNames could > be quit long - perhaps hundreds of lines. Is there a practical limit on the > number of columns a Datagrid can be set to? > > > ___ > use-livecode mailing list > use-livecode@lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > ___ > use-livecode mailing list > use-livecode@lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
Re: Datagrid internal error
Paul. All I saw was this: "I believe there is a property you set, after which you programmatically control the population of the datagrid. I am in a hurry so I can't look it up right now, but it is in the datagrid API in livecode lessons. Which is why I mentioned that the bulk of the thread must not have come to me. Craig ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
Re: Datagrid internal error
Well the question came up if there was some limit on the number of records, and controlling the population of the datagrid would solve that. As far as the number of columns, I suspect there may be a limit on the number of *displayed* columns, and probably an issue with what characters are allowed for column names. Those things I am unsure of. Is it necessary to display *all* the data in the array, or can you use the datagrid as a sort of index to an array that is in memory, only populating the columns you need? The datagrid library is not protected, so if your app in the IDE throws an error and drops you into the datagrid library script in the debugger (mine does), then you can poke around in the debugger to see where things are going awry. Bob S > On Aug 10, 2022, at 13:27 , Paul Dupuis via use-livecode > wrote: > > I'm sorry, I don;t see what setting the dgData or dgText or dgNuberofRecords > has to do with my original post - I get an internal Datagird script error > when setting the names of the columns (see original post) ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
Re: Datagrid internal error
I'm sorry, I don;t see what setting the dgData or dgText or dgNuberofRecords has to do with my original post - I get an internal Datagird script error when setting the names of the columns (see original post) On 8/10/2022 11:11 AM, Bob Sneidar via use-livecode wrote: I was referring to dgNumberOfRecords • get the dgNumberOfRecords • set the dgNumberOfRecords of group "DataGrid" to 20 • Getting the dgNumberOfRecords is the same as getting the dgNumberOfLines. Setting the dgNumberOfRecords has a special significance however. If you set the dgNumberOfRecords then you are telling the data grid that you know how many total records there are and you are going to supply the data for each record on an as-needed basis. This is useful when you have data in a database cursor that you would like to feed into the data grid. After setting this property the data grid will send the GetDataForLine message to the data grid whenever it needs to display data for a particular line. You can define this command in the data grid script or elsewhere in the hierarchy. The definition is as follows: command GetDataForLine pLine, @pDataA end GetDataForLine You should fill pDataA with the appropriate data based on the line of data being requested. pDataA should not have a numeric index. It is the array that would be assigned to one of the numeric indexes if you were assigning the dgData property. Bob S On Aug 10, 2022, at 06:51 , Craig Newman via use-livecode wrote: This seems like a fragment of a longer thread, but the “dgText” and the “dgData” are the two methods I use to extract, process and reload the content of a data grid. Craig On Aug 9, 2022, at 11:09 AM, Bob Sneidar via use-livecode wrote: I believe there is a property you set, after which you programmatically control the population of the datagrid. I am in a hurry so I can't look it up right now, but it is in the datagrid API in livecode lessons. Bob S On Aug 9, 2022, at 05:09 , Paul Dupuis via use-livecode wrote: I can only image that the customer entered a name with some characters that Datagrid has a problem with as a column name OR that the shear number of columns (as the customer is working with a very large dataset) exceeds some practical Datagrid limit, but what would that be? ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
Re: Datagrid internal error
I was referring to dgNumberOfRecords • get the dgNumberOfRecords • set the dgNumberOfRecords of group "DataGrid" to 20 • Getting the dgNumberOfRecords is the same as getting the dgNumberOfLines. Setting the dgNumberOfRecords has a special significance however. If you set the dgNumberOfRecords then you are telling the data grid that you know how many total records there are and you are going to supply the data for each record on an as-needed basis. This is useful when you have data in a database cursor that you would like to feed into the data grid. After setting this property the data grid will send the GetDataForLine message to the data grid whenever it needs to display data for a particular line. You can define this command in the data grid script or elsewhere in the hierarchy. The definition is as follows: command GetDataForLine pLine, @pDataA end GetDataForLine You should fill pDataA with the appropriate data based on the line of data being requested. pDataA should not have a numeric index. It is the array that would be assigned to one of the numeric indexes if you were assigning the dgData property. Bob S > On Aug 10, 2022, at 06:51 , Craig Newman via use-livecode > wrote: > > This seems like a fragment of a longer thread, but the “dgText” and the > “dgData” are the two methods I use to extract, process and reload the content > of a data grid. > > Craig > >> On Aug 9, 2022, at 11:09 AM, Bob Sneidar via use-livecode >> wrote: >> >> I believe there is a property you set, after which you programmatically >> control the population of the datagrid. I am in a hurry so I can't look it >> up right now, but it is in the datagrid API in livecode lessons. >> >> Bob S >> >> >>> On Aug 9, 2022, at 05:09 , Paul Dupuis via use-livecode >>> wrote: >>> >>> I can only image that the customer entered a name with some characters that >>> Datagrid has a problem with as a column name OR that the shear number of >>> columns (as the customer is working with a very large dataset) exceeds some >>> practical Datagrid limit, but what would that be? >> >> >> ___ >> use-livecode mailing list >> use-livecode@lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription >> preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > ___ > use-livecode mailing list > use-livecode@lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
Re: Datagrid internal error
This seems like a fragment of a longer thread, but the “dgText” and the “dgData” are the two methods I use to extract, process and reload the content of a data grid. Craig > On Aug 9, 2022, at 11:09 AM, Bob Sneidar via use-livecode > wrote: > > I believe there is a property you set, after which you programmatically > control the population of the datagrid. I am in a hurry so I can't look it up > right now, but it is in the datagrid API in livecode lessons. > > Bob S > > >> On Aug 9, 2022, at 05:09 , Paul Dupuis via use-livecode >> wrote: >> >> I can only image that the customer entered a name with some characters that >> Datagrid has a problem with as a column name OR that the shear number of >> columns (as the customer is working with a very large dataset) exceeds some >> practical Datagrid limit, but what would that be? > > > ___ > use-livecode mailing list > use-livecode@lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
Re: Datagrid internal error
I believe there is a property you set, after which you programmatically control the population of the datagrid. I am in a hurry so I can't look it up right now, but it is in the datagrid API in livecode lessons. Bob S > On Aug 9, 2022, at 05:09 , Paul Dupuis via use-livecode > wrote: > > I can only image that the customer entered a name with some characters that > Datagrid has a problem with as a column name OR that the shear number of > columns (as the customer is working with a very large dataset) exceeds some > practical Datagrid limit, but what would that be? ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
Re: Datagrid internal error
comma delimited or cr delimited, without looking it up, I am sure it is in the right format since it work 99.99% of the time. The names that would be in the column list all go through a name check function. That function prevents names that are all spaces, longer than 255 characters, or are a handful of "reserved words" and checks that each name does not contain the following characters if (it < 32) then return false -- all control characters (0x to 0x0031) if (it = 34) then return false -- " quote (0x0034) -- LC string encapsulator if (it = 40) then return false -- ( left parenthesis (0x0040) -- used in filter and theory criteria if (it = 41) then return false -- ) right parenthesis (0x0041) -- used in filter and theory criteria if (it = 44) then return false -- , comma (0x0044) -- LC item delimiter if (it = 60) then return false -- < less than sign (0x0060) -- htmlText tag delimiter if (it = 62) then return false -- > greater than sign (0x0062) -- htmlText tag delimiter if (it = 91) then return false -- [ left square bracket (0x0091) -- LC merge delimiter if (it = 92) then return false -- \ backslash (0x0092) -- regex string escape character if (it = 93) then return false -- ] right square bracket (0x0093) -- LC merge delimiter if (it = 124) then return false -- | vertical bar (0x0124) -- used in code if (it = 127) then return false -- DEL delete (0x0127) So, comma's are excluded, as are [ and ], and control characters, etc.. However all Unicode characters, codepoints 128 and up are allowed. Testing shows you can have a Datagrid where you can set the columns to empty, so that is not the cause of the error. I can only image that the customer entered a name with some characters that Datagrid has a problem with as a column name OR that the shear number of columns (as the customer is working with a very large dataset) exceeds some practical Datagrid limit, but what would that be? I don't really want to have to carve out time to build test stacks to try names with every possible characters or ever increasing numbers of column names until the error occurs or those possibilities are ruled out. I was hoping there might be someone on the list who was familiar enough with the internals of the Datagrid to have some idea what might have caused the error. Unfortunately, the customer's data is confidential, so they do not want to provide the data to us to use for testing. And the customer is either not technically savvy or does not have time (they have said they are under a deadline) to help much in troubleshooting. They can get the analysis this Datagrid provides by exporting some data to Excel and doing the analysis in Excel, so the error is not a show-stopper for them as well. Definitely not as convenient as the report in our app, but a viable work-around. See my original post for the executionContexts and the specific error. On 8/8/2022 7:56 PM, Bob Sneidar via use-livecode wrote: Nope I take that back it's lines. I remember now wondering why that was. Bob S On Aug 8, 2022, at 16:53 , Bob Sneidar wrote: I believe dgProp ["columns"] is a comma delimited list. Bob S On Aug 8, 2022, at 09:26 , Paul Dupuis via use-livecode wrote: A customer encountered the following execution error (below) in our app (built on Livecode 9.6.7, MacOS 12.5). This error is occurring in the scrips for the Datagrid itself, rather than our code. At the end, it is one of our handler, "populateMe", where line 139 is where the error starts. Line 139 set the dgProp["columns"] of grp "rwMatrixObj_DataGrid" to tColumnNames ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
Re: Datagrid internal error
Nope I take that back it's lines. I remember now wondering why that was. Bob S > On Aug 8, 2022, at 16:53 , Bob Sneidar wrote: > > I believe dgProp ["columns"] is a comma delimited list. > > Bob S > > >> On Aug 8, 2022, at 09:26 , Paul Dupuis via use-livecode >> wrote: >> >> A customer encountered the following execution error (below) in our app >> (built on Livecode 9.6.7, MacOS 12.5). This error is occurring in the scrips >> for the Datagrid itself, rather than our code. At the end, it is one of our >> handler, "populateMe", where line 139 is where the error starts. >> Line 139 set the dgProp["columns"] of grp "rwMatrixObj_DataGrid" to >> tColumnNames > ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
Re: Datagrid internal error
I believe dgProp ["columns"] is a comma delimited list. Bob S > On Aug 8, 2022, at 09:26 , Paul Dupuis via use-livecode > wrote: > > A customer encountered the following execution error (below) in our app > (built on Livecode 9.6.7, MacOS 12.5). This error is occurring in the scrips > for the Datagrid itself, rather than our code. At the end, it is one of our > handler, "populateMe", where line 139 is where the error starts. > Line 139 set the dgProp["columns"] of grp "rwMatrixObj_DataGrid" to > tColumnNames ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
RE: Datagrid internal error
Paul, The max height of a field is 32,767 pixels. This can be hard to quantify especially on mobile with the cornucopia of screen resolutions. I would imagine that this limit also applies to groups as well. I got bit on this when the app worked in the IDE but failed on some devices. Ralph DiMola IT Director Evergreen Information Services rdim...@evergreeninfo.net -Original Message- From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On Behalf Of Paul Dupuis via use-livecode Sent: Monday, August 08, 2022 12:39 PM To: use-livecode@lists.runrev.com Cc: Paul Dupuis Subject: Re: Datagrid internal error On 8/8/2022 12:26 PM, Paul Dupuis via use-livecode wrote: > A customer encountered the following execution error (below) in our > app (built on Livecode 9.6.7, MacOS 12.5). This error is occurring in > the scrips for the Datagrid itself, rather than our code. At the end, > it is one of our handler, "populateMe", where line 139 is where the > error starts. > Line 139 set the dgProp["columns"] of grp "rwMatrixObj_DataGrid" to > tColumnNames > For example, some information from the customer suggest they are working with a VERY large dataset, so the length of the list in TColumnNames could be quit long - perhaps hundreds of lines. Is there a practical limit on the number of columns a Datagrid can be set to? ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
Re: Datagrid internal error
On 8/8/2022 12:26 PM, Paul Dupuis via use-livecode wrote: A customer encountered the following execution error (below) in our app (built on Livecode 9.6.7, MacOS 12.5). This error is occurring in the scrips for the Datagrid itself, rather than our code. At the end, it is one of our handler, "populateMe", where line 139 is where the error starts. Line 139 set the dgProp["columns"] of grp "rwMatrixObj_DataGrid" to tColumnNames For example, some information from the customer suggest they are working with a VERY large dataset, so the length of the list in TColumnNames could be quit long - perhaps hundreds of lines. Is there a practical limit on the number of columns a Datagrid can be set to? ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode
Datagrid internal error
A customer encountered the following execution error (below) in our app (built on Livecode 9.6.7, MacOS 12.5). This error is occurring in the scrips for the Datagrid itself, rather than our code. At the end, it is one of our handler, "populateMe", where line 139 is where the error starts. Line 139 set the dgProp["columns"] of grp "rwMatrixObj_DataGrid" to tColumnNames tColumnNames is a variable containing a list of text lines that are customer entered column names, so they could be ANYTHING (up to 255 chars, no control characters, including DEL (127)) that a user could type or paste into a field, including words in any language using Unicode. As the executionContexts data does not contain the actual values of the variable tColumns when the error occurs, does ANYONE have any idea what tColumns might contain that could produce the error(s) show below? Technical information: Property: value is not a number: (Line 11, column 1) Object: can't set object property: (Line 11, column 5) set: can't set property: (Line 11, column 1) Handler: error in statement: LayoutControl (Line 11, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDefaultHeaderButtonBehavior" - repeat: error in statement: (Line 5066, column 1) Handler: error in statement: _table.ResizeHeaders (Line 5052, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - Handler: error in statement: _table.ResizeColumns (Line 4967, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - Handler: error in statement: _table.CreateColumns (Line 4737, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - Handler: error in statement: _table.RegenerateColumns (Line 4538, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - switch: error in statement: (Line 6150, column 1) Handler: error in statement: dgProps (Line 5553, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - set: can't set property: (Line 5529, column 1) Handler: error in statement: dgProp (Line 5529, column 1) Object ID: stack "RevDataGridLibraryBehaviorsDataGridButtonBehavior" - set: can't set property: (Line 139, column 1) if-then: error in statement: (Line 139, column 1) Handler: error in statement: populateMe (Line 138, column 1) Object: group "Table" of card "FrequencyReport" of stack "FreqReport.rwtl" Object ID: group id 1162 of card id 1002 of stack "/Applications/HyperRESEARCH 4.5.4/Components/Tools/FreqReport.rwtl" ___ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode