@@ -412,56 +412,60 @@ export class DynamicForm extends React.Component<
412412 columnInternalName,
413413 hiddenFieldName,
414414 } = field ;
415+ let fieldcolumnInternalName = columnInternalName ;
416+ if ( fieldcolumnInternalName . startsWith ( '_x' ) || fieldcolumnInternalName . startsWith ( '_' ) ) {
417+ fieldcolumnInternalName = `OData_${ fieldcolumnInternalName } ` ;
418+ }
415419 if ( field . newValue !== null && field . newValue !== undefined ) {
416420
417421 let value = field . newValue ;
418422 if ( [ "Lookup" , "LookupMulti" , "User" , "UserMulti" ] . indexOf ( fieldType ) < 0 ) {
419- objects [ columnInternalName ] = value ;
423+ objects [ fieldcolumnInternalName ] = value ;
420424 }
421425
422426 // Choice fields
423427
424428 if ( fieldType === "Choice" ) {
425- objects [ columnInternalName ] = field . newValue . key ;
429+ objects [ fieldcolumnInternalName ] = field . newValue . key ;
426430 }
427431 if ( fieldType === "MultiChoice" ) {
428- objects [ columnInternalName ] = { results : field . newValue } ;
432+ objects [ fieldcolumnInternalName ] = { results : field . newValue } ;
429433 }
430434
431435 // Lookup fields
432436
433437 if ( fieldType === "Lookup" ) {
434438 if ( value && value . length > 0 ) {
435- objects [ `${ columnInternalName } Id` ] = value [ 0 ] . key ;
439+ objects [ `${ fieldcolumnInternalName } Id` ] = value [ 0 ] . key ;
436440 } else {
437- objects [ `${ columnInternalName } Id` ] = null ;
441+ objects [ `${ fieldcolumnInternalName } Id` ] = null ;
438442 }
439443 }
440444 if ( fieldType === "LookupMulti" ) {
441445 value = [ ] ;
442446 field . newValue . forEach ( ( element ) => {
443447 value . push ( element . key ) ;
444448 } ) ;
445- objects [ `${ columnInternalName } Id` ] = {
449+ objects [ `${ fieldcolumnInternalName } Id` ] = {
446450 results : value . length === 0 ? null : value ,
447451 } ;
448452 }
449453
450454 // User fields
451455
452456 if ( fieldType === "User" ) {
453- objects [ `${ columnInternalName } Id` ] = field . newValue . length === 0 ? null : field . newValue ;
457+ objects [ `${ fieldcolumnInternalName } Id` ] = field . newValue . length === 0 ? null : field . newValue ;
454458 }
455459 if ( fieldType === "UserMulti" ) {
456- objects [ `${ columnInternalName } Id` ] = {
460+ objects [ `${ fieldcolumnInternalName } Id` ] = {
457461 results : field . newValue . length === 0 ? null : field . newValue ,
458462 } ;
459463 }
460464
461465 // Taxonomy / Managed Metadata fields
462466
463467 if ( fieldType === "TaxonomyFieldType" ) {
464- objects [ columnInternalName ] = {
468+ objects [ fieldcolumnInternalName ] = {
465469 __metadata : { type : "SP.Taxonomy.TaxonomyFieldValue" } ,
466470 Label : value [ 0 ] ?. name ?? "" ,
467471 TermGuid : value [ 0 ] ?. key ?? "11111111-1111-1111-1111-111111111111" ,
@@ -477,19 +481,19 @@ export class DynamicForm extends React.Component<
477481 // Other fields
478482
479483 if ( fieldType === "Location" ) {
480- objects [ columnInternalName ] = JSON . stringify ( field . newValue ) ;
484+ objects [ fieldcolumnInternalName ] = JSON . stringify ( field . newValue ) ;
481485 }
482486 if ( fieldType === "Thumbnail" ) {
483487 if ( additionalData ) {
484488 const uploadedImage = await this . uploadImage ( additionalData ) ;
485- objects [ columnInternalName ] = JSON . stringify ( {
489+ objects [ fieldcolumnInternalName ] = JSON . stringify ( {
486490 type : "thumbnail" ,
487491 fileName : uploadedImage . Name ,
488492 serverRelativeUrl : uploadedImage . ServerRelativeUrl ,
489493 id : uploadedImage . UniqueId ,
490494 } ) ;
491495 } else {
492- objects [ columnInternalName ] = null ;
496+ objects [ fieldcolumnInternalName ] = null ;
493497 }
494498 }
495499 }
@@ -1061,9 +1065,14 @@ export class DynamicForm extends React.Component<
10611065 // eslint-disable-next-line @typescript-eslint/no-explicit-any
10621066 const selectedTags : any = [ ] ;
10631067
1068+ let fieldName = field . InternalName ;
1069+ if ( fieldName . startsWith ( '_x' ) || fieldName . startsWith ( '_' ) ) {
1070+ fieldName = `OData_${ fieldName } ` ;
1071+ }
1072+
10641073 // If a SharePoint Item was loaded, get the field value from it
1065- if ( item !== null && item [ field . InternalName ] ) {
1066- value = item [ field . InternalName ] ;
1074+ if ( item !== null && item [ fieldName ] ) {
1075+ value = item [ fieldName ] ;
10671076 stringValue = value . toString ( ) ;
10681077 } else {
10691078 defaultValue = field . DefaultValue ;
@@ -1220,8 +1229,10 @@ export class DynamicForm extends React.Component<
12201229
12211230 // Setup DateTime fields
12221231 if ( field . FieldType === "DateTime" ) {
1223- if ( item !== null && item [ field . InternalName ] ) {
1224- value = new Date ( item [ field . InternalName ] ) ;
1232+
1233+ if ( item !== null && item [ fieldName ] ) {
1234+
1235+ value = new Date ( item [ fieldName ] ) ;
12251236 stringValue = value . toISOString ( ) ;
12261237 } else if ( defaultValue === "[today]" ) {
12271238 defaultValue = new Date ( ) ;
0 commit comments