Question

FSM - Data Member Specified by 'column name' cannot be found

  • 8 September 2021
  • 10 replies
  • 300 views

Userlevel 5
Badge +14

Hi,

We have created a custom table and when creating a new record all is fine, apart from one small issue.

One of the columns in the table is called ‘expiry_dt’. This column has been set with a ‘dateonly’ mask type. When we try to save a value in this column we get an exception of;

        <system_error>
          <severity>ERROR</severity>
          <message>Data member specified by expiry_dt cannot be found.</message>
        </system_error>

I have created numerous custom tables in the past. Never seen this error before.

 

Searching the community I can see this topic; 

which references the same error. No comments on that yet, so though I would ask with a different angle to it.

 

Anyone else seen this, or can assist with what the exception is telling me.

 

Regards

Ady

 


10 replies

Userlevel 5
Badge +14

Hi, 

Anyone able to assist on the question above?

Ady

Userlevel 7
Badge +24

@Aaron.Sleight @Jon Reid Are either of you able to assist with this?

 

Userlevel 6
Badge +17

Ady, do you have other custom table columns set up with DATEONLY mask?       What version of FSM are you currently running?

Userlevel 5
Badge +14

Hi Jon,

We’re currently on FSM 5.7 U11.

We do have other custom tables where we have date DateTime field set to DATEONLY on the Mask Type and they have no issues. We have also tried the same field with DATETIME too.

Either way we’re still getting the same exception (as per above) when trying to save data to the table.

Ady

Userlevel 5
Badge +14

Seems like there must be some type of mismatch with metadata and either customer DataTable or Policy classes, or the actual db table. 

@AdrianEgley are you using just metadata for this custom table or do you have custom classes for it as well?  Did you check the schema for the table in the DB -- i.e. does the expiry_dt column exist on the table.

 

May be able to see exactly what’s going wrong if you turn up server logging to level 9 for EX and DB and then try to set that value.  Then check server log or attach here for us to look at.  And turn log levels back down then.

Userlevel 5
Badge +14

Hi @Aaron.Sleight,

Yes the table has been created on the database and that column is there.

We have tried both creating the table in the DB first and then using the reverse metadata injector. Also by creating the Metadata and generating a SQL script through the client.

Both create the same error which we’re finding odd.

Attached are the server logs, which I had originally checked, but nothing to note stood out.

 

Regards

 

Ady

Userlevel 5
Badge +14

I also forgot to say, we can save data to that table. We just cannot insert or update a record if there is a value in the expiry_dt column.

 

Ady

Userlevel 5
Badge +14

@Aaron.Sleight / @Jon Reid 

Speaking to my colleague who’s been doing this change, and apologies I should have confirmed this earlier with them. The custom table was an ‘AW Original’ table back in 2009. I just assumed he had created it himself.

 

Therefore they have done an ‘alter_table’ at DB level and then added then column to the metadata.

 

Due to it being in a Dev environment, we have also dropped the table and recreated it in the database, and then created the Metadata again. Even after that the same error message appears stating the data member cannot be found.

 

Ady

Badge +1

How to find columns in FSM metadata. 

Userlevel 5
Badge +14

How to find columns in FSM metadata. 

Not sure exactly what you’re asking here?

How to see the columns for a particular table?

If it is how to search for metadata for a particular column name? 

 

Either way, use the “FSM Metadata” or “Custom Metadata” screen, enter your table_name or column_name search constraints, then select the table(s) that you want to view the metadata for.  On the screen for a particular table, then there will be a child list showing all of the columns for that particular table.

 

The “FSM Metadata” screen shows all of the baseline FSM metadata and this is not editable.

The “Custom Metadata” screen will display only the new or overridden metadata that you have in this environment.

 

If your question was actually something else, can you please elaborate?

Reply