Get Dreamweaver to highlight .mako files as .html - dreamweaver

Ideally, I would like to be able to treat a site built using Mako templates in Dreamweaver, as I'm merely working on the design aspect. I imagine the work will go much faster if I could edit .mako files in Dreamweaver and have it render the file like it would with HTML.
I've set up AMP servers to develop in Dreamweaver, and I'm hoping I can use a Paster webserver in the same way. More-over, though, just for ease, I'd like to have an extension or a setting in Dreamweaver that would allow me to treat it like a normal HTML-based site - that's all .mako is, basically, is HTML (like PHP) with a .mako extension on it.
Currently, my Extensions.txt file contains this:
HTM,HTML,SHTM,SHTML,HTA,HTC,XHTML,STM,SSI,JS,JSON,AS,ASC,ASR,XML,XSL,XSD,DTD,XSLT,RSS,RDF,LBI,DWT,ASP,ASA,ASPX,ASCX,ASMX,CONFIG,CS,CSS,CFM,CFML,CFC,TLD,TXT,PHP,PHP3,PHP4,PHP5,PHP-DIST,PHTML,JSP,WML,TPL,LASSO,JSF,VB,VBS,VTM,VTML,INC,SQL,JAVA,EDML,MASTER,INFO,INSTALL,THEME,CONFIG,MODULE,PROFILE,ENGINE,SVG,MAKO:All Documents
HTM,HTML,HTA,HTC,XHTML,MAKO:HTML Documents
SHTM,SHTML,STM,SSI,INC:Server-Side Includes
JS,JSON:JavaScript Documents
XML,DTD,XSD,XSL,XSLT,RSS,RDF:XML Files
LBI:Library Files
DWT:Template Files
CSS:Style Sheets
ASP,ASA:Active Server Pages
ASPX,ASCX,ASMX,CS,VB,CONFIG,MASTER:Active Server Plus Pages
CFM,CFML,CFC:ColdFusion Templates
AS:ActionScript Files
ASC:ActionScript Communication Files
ASR:ActionScript Remote Files
TXT:Text Files
PHP,PHP3,PHP4,PHP5,TPL,PHP-DIST,PHTML:PHP Files
LASSO:Lasso Files
JSP,JST:Java Server Pages
JSF:Fireworks Script
TLD:Tag Library Descriptor Files
JAVA:Java Files
SQL:SQL Files
ASX:Windows Media Advanced Stream Redirector
WML:WML Files
EDML:EDML Files
VBS:VBScript Files
VTM,VTML:VTML Files
SVG:Scalable Vector Graphics Files
Note that the MAKO reference is on the first line, as :All Documents, and again in the :HTML Documents
Here's my MMDocumentTypes.xml document, which includes near the last entry.
<?xml version="1.0"?>
<documenttypes xmlns:MMString="http://www.macromedia.com/schemes/data/string/">
<documenttype id="HTML" internaltype="HTML" winfileextension="html,htm,shtml,shtm,stm,tpl,lasso,xhtml,mako" macfileextension="html,htm,shtml,shtm,tpl,lasso,xhtml,mako,ssi" file="Default.html" writebyteordermark="false" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_0" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_1" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="ASP-JS" servermodel="ASP JavaScript" internaltype="Dynamic" winfileextension="asp" macfileextension="asp" file="Default_js.asp" writebyteordermark="false" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_4" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_5" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="ASP-VB" servermodel="ASP VBScript" internaltype="Dynamic" winfileextension="asp" macfileextension="asp" file="Default_vb.asp" writebyteordermark="false" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_2" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_3" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="ColdFusion" servermodel="ColdFusion" internaltype="Dynamic" winfileextension="cfm,cfml" macfileextension="cfm,cfml" file="Default.cfm" writebyteordermark="false" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_6" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_7" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="CFC" servermodel="ColdFusion" internaltype="Dynamic" winfileextension="cfc" macfileextension="cfc" file="Default.cfc" writebyteordermark="false" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_56" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_57" />
</description>
<dtdcontext>none</dtdcontext>
</documenttype>
<documenttype id="JSP" servermodel="JSP" internaltype="Dynamic" winfileextension="jsp,jst" macfileextension="jsp,jst" file="Default.jsp" writebyteordermark="false" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_8" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_9" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="ASP.NET_VB" servermodel="ASP.NET VB" internaltype="Dynamic" winfileextension="aspx,ascx,asmx" macfileextension="aspx,ascx" file="Default_vb.aspx" writebyteordermark="true" newdocumentname="WebForm" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_12" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_13" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="ASP.NET_CSharp" servermodel="ASP.NET C#" internaltype="Dynamic" winfileextension="aspx,ascx,asmx" macfileextension="aspx,ascx" file="Default_cs.aspx" writebyteordermark="true" newdocumentname="WebForm" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_10" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_11" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="PHP_MySQL" servermodel="PHP MySQL" internaltype="Dynamic" winfileextension="php,php3,php4,php5,phtml" macfileextension="php,php3,php4,php5,phtml" file="Default.php" writebyteordermark="false" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_14" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_15" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="JavaScript" internaltype="Text" winfileextension="js,json" macfileextension="js,json" file="Default.js" writebyteordermark="false" mimetype="text/javascript">
<TITLE>
<MMString:loadString id="mmdocumenttypes_16" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_17" />
</description>
</documenttype>
<documenttype id="VBScript" internaltype="Text" winfileextension="vbs" macfileextension="vbs" file="Default.vbs" writebyteordermark="false" mimetype="text/vbscript">
<TITLE>
<MMString:loadString id="mmdocumenttypes_18" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_19" />
</description>
</documenttype>
<documenttype id="Csharp" internaltype="Text" winfileextension="cs" macfileextension="cs" file="Default.cs" writebyteordermark="false" mimetype="text/cs">
<TITLE>
<MMString:loadString id="mmdocumenttypes_20" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_21" />
</description>
</documenttype>
<documenttype id="VB" internaltype="Text" winfileextension="vb" macfileextension="vb" file="Default.vb" writebyteordermark="false" mimetype="text/vb">
<TITLE>
<MMString:loadString id="mmdocumenttypes_22" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_23" />
</description>
</documenttype>
<documenttype id="Java" internaltype="Text" winfileextension="java" macfileextension="java" file="Default.java" writebyteordermark="false" mimetype="text/java">
<TITLE>
<MMString:loadString id="mmdocumenttypes_24" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_25" />
</description>
</documenttype>
<documenttype id="DWTemplate" internaltype="DWTemplate" winfileextension="dwt" macfileextension="dwt" file="Default.dwt" writebyteordermark="false" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_26" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_27" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="EDML" internaltype="XML" winfileextension="edml,edm" macfileextension="edml,edm" file="Default.edml" writebyteordermark="false" mimetype="text/xml" >
<TITLE>
<MMString:loadString id="mmdocumenttypes_28" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_29" />
</description>
<dtdcontext>none</dtdcontext>
</documenttype>
<documenttype id="CSS" internaltype="Text" winfileextension="css" macfileextension="css" file="Default.css" writebyteordermark="false" mimetype="text/css" >
<TITLE>
<MMString:loadString id="mmdocumenttypes_30" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_31" />
</description>
</documenttype>
<documenttype id="XML" internaltype="XML" winfileextension="xml,xsd,rss,rdf,dtd,vtm,vtml,csn,config,mxi" macfileextension="xml,xsd,rss,rdf,dtd,vtm,vtml,csn,config,mxi" file="Default.xml" writebyteordermark="false" mimetype="text/xml" >
<TITLE>
<MMString:loadString id="mmdocumenttypes_32" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_33" />
</description>
<dtdcontext>xml</dtdcontext>
</documenttype>
<documenttype id="Actionscript" internaltype="Text" winfileextension="as" macfileextension="as" file="Default.as" writebyteordermark="false" mimetype="text/as" >
<TITLE>
<MMString:loadString id="mmdocumenttypes_34" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_35" />
</description>
</documenttype>
<documenttype id="Text" internaltype="Text" winfileextension="txt" macfileextension="txt" file="Default.txt" writebyteordermark="false" mimetype="text/plain" >
<TITLE>
<MMString:loadString id="mmdocumenttypes_36" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_37" />
</description>
</documenttype>
<documenttype id="WML" internaltype="XML" winfileextension="wml" macfileextension="wml" file="Default.wml" writebyteordermark="false" mimetype="text/xml">
<TITLE>
<MMString:loadString id="mmdocumenttypes_38" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_39" />
</description>
<dtdcontext>wml</dtdcontext>
<dtdcontext>required</dtdcontext>
</documenttype>
<documenttype id="TLD" internaltype="XML" winfileextension="tld" macfileextension="tld" file="Default.tld" writebyteordermark="false" mimetype="text/xml">
<TITLE>
<MMString:loadString id="mmdocumenttypes_58" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_59" />
</description>
<dtdcontext>jsp_tag_library</dtdcontext>
<dtdcontext>required</dtdcontext>
</documenttype>
<documenttype id="LibraryItem" internaltype="HTML" winfileextension="lbi" macfileextension="lbi" file="Default.lbi" writebyteordermark="false" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_40" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_41" />
</description>
<dtdcontext>none</dtdcontext>
</documenttype>
<documenttype id="DWTemplate_ASPVB" internaltype="DWTemplate" dynamicid="ASP-VB" winfileextension="dwt.asp" macfileextension="dwt.asp" file="Default_vb.dwt.asp" writebyteordermark="false" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_42" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_43" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="DWTemplate_ASPJS" internaltype="DWTemplate" dynamicid="ASP-JS" winfileextension="dwt.asp" macfileextension="dwt.asp" file="Default_js.dwt.asp" writebyteordermark="false" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_44" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_45" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="DWTemplate_CF" internaltype="DWTemplate" dynamicid="ColdFusion" winfileextension="dwt.cfm" macfileextension="dwt.cfm" file="Default.dwt.cfm" writebyteordermark="false" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_46" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_47" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="DWTemplate_JSP" internaltype="DWTemplate" dynamicid="JSP" winfileextension="dwt.jsp" macfileextension="dwt.jsp" file="Default.dwt.jsp" writebyteordermark="false" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_48" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_49" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="DWTemplate_AXCS" internaltype="DWTemplate" dynamicid="ASP.NET_CSharp" winfileextension="dwt.aspx" macfileextension="dwt.aspx" file="Default_cs.dwt.aspx" writebyteordermark="true" newdocumentname="WebForm" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_50" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_51" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="DWTemplate_AXVB" internaltype="DWTemplate" dynamicid="ASP.NET_VB" winfileextension="dwt.aspx" macfileextension="dwt.aspx" file="Default_vb.dwt.aspx" writebyteordermark="true" newdocumentname="WebForm" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_52" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_53" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="DWTemplate_PHP" internaltype="DWTemplate" dynamicid="PHP_MySQL" winfileextension="dwt.php" macfileextension="dwt.php" file="Default.dwt.php" writebyteordermark="false" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_54" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_55" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="ASComm" internaltype="Text" winfileextension="asc" macfileextension="asc" file="Default.asc" writebyteordermark="false" mimetype="text/asc">
<TITLE>
<MMString:loadString id="mmdocumenttypes_60" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_61" />
</description>
</documenttype>
<documenttype id="ASRemote" internaltype="Text" winfileextension="asr" macfileextension="asr" file="Default.asr" writebyteordermark="false" mimetype="text/asr">
<TITLE>
<MMString:loadString id="mmdocumenttypes_62" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_63" />
</description>
</documenttype>
<documenttype id="XSLT" servermodel="XSLT" internaltype="XSLT" dynamicid="XSLT" winfileextension="xsl,xslt" macfileextension="xsl,xslt" file="Default.xsl" writebyteordermark="false" mimetype="text/xsl">
<TITLE>
<MMString:loadString id="mmdocumenttypes_66" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_67" />
</description>
<dtdcontext>xslt</dtdcontext>
<dtdcontext>required</dtdcontext>
</documenttype>
<documenttype id="XSLT-fragment" servermodel="XSLT" internaltype="XSLT" dynamicid="XSLT" winfileextension="xsl,xslt" macfileextension="xsl,xslt" file="Default-fragment.xsl" writebyteordermark="false" mimetype="text/xsl">
<TITLE>
<MMString:loadString id="mmdocumenttypes_68" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_69" />
</description>
<dtdcontext>none</dtdcontext>
<dtdcontext>required</dtdcontext>
</documenttype>
<documenttype id="MAKO" internaltype="HTML" winfileextension="mako" macfileextension="mako" file="Default.mako" writebyteordermark="false" mimetype="text/html">
<TITLE>
<MMString:loadString id="mmdocumenttypes_74" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_75" />
</description>
<dtdcontext>html</dtdcontext>
</documenttype>
<documenttype id="SVG" internaltype="XML" winfileextension="svg" macfileextension="svg" file="Default.svg" writebyteordermark="false" mimetype="text/xml" >
<TITLE>
<MMString:loadString id="mmdocumenttypes_72" />
</TITLE>
<description>
<MMString:loadString id="mmdocumenttypes_73" />
</description>
<dtdcontext>svg</dtdcontext>
<dtdcontext>required</dtdcontext>
</documenttype>
</documenttypes>
Any help with this would be much appreciated.

You need to add the .mako extension to the Extensions.txt file and also assign it a file type in the MMDocumentTypes.xml file. There is a TechNote that covers both of these instructions and also provides the file locations.

As JCL1178 noted, instead of making a new XML entry in MMDocumentTypes.xml, try adding MAKO to the first HTML entry under winfileextension and macfileextension. That worked for me.
Did you make sure to remove it from the "open in code view" extension in Preferences?
Open in Code View
The Open in Code View preference identifies file extensions that do
not allow Design view. After following the instructions in this
TechNote, be sure to remove the file extension (if it is listed) from
the Open In Code View preference to allow file editing in Design view.
To set this preference, choose Edit > Preferences (Windows) or
Dreamweaver > Preferences (Mac OS), and locate the File Types /
Editors category.

Related

Using the SharePoint REST API to update a list item

I am attempting to update a list item using the SharePoint REST API but am encountering the following error:
<?xml version="1.0" encoding="utf-8"?>
<m:error xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">
<m:code>-1, Microsoft.SharePoint.Client.InvalidClientQueryException</m:code>
<m:message xml:lang="en-US">The expression "web/lists/GetByTitle('Drop Off Library')/items("http:/example.com/_api/Web/GetFileByServerRelativeUrl('/DropOffLibrary/b.txt')")" is not valid.</m:message>
</m:error>
After adding the file, I receive the following response:
<?xml version="1.0" encoding="utf-8"?>
<entry xml:base="http://example.com/_api/" xmlns="http://www.w3.org/2005/Atom" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:georss="http://www.georss.org/georss" xmlns:gml="http://www.opengis.net/gml">
<id>http://example.com/_api/Web/GetFileByServerRelativeUrl('/DropOffLibrary/b.txt')</id>
<category term="SP.File" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" />
<link rel="edit" href="Web/GetFileByServerRelativeUrl('/DropOffLibrary/b.txt')" />
<link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/Author" type="application/atom+xml;type=entry" title="Author" href="Web/GetFileByServerRelativeUrl('/DropOffLibrary/b.txt')/Author" />
<link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/CheckedOutByUser" type="application/atom+xml;type=entry" title="CheckedOutByUser" href="Web/GetFileByServerRelativeUrl('/DropOffLibrary/b.txt')/CheckedOutByUser" />
<link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/EffectiveInformationRightsManagementSettings" type="application/atom+xml;type=entry" title="EffectiveInformationRightsManagementSettings" href="Web/GetFileByServerRelativeUrl('/DropOffLibrary/b.txt')/EffectiveInformationRightsManagementSettings" />
<link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/InformationRightsManagementSettings" type="application/atom+xml;type=entry" title="InformationRightsManagementSettings" href="Web/GetFileByServerRelativeUrl('/DropOffLibrary/b.txt')/InformationRightsManagementSettings" />
<link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/ListItemAllFields" type="application/atom+xml;type=entry" title="ListItemAllFields" href="Web/GetFileByServerRelativeUrl('/DropOffLibrary/b.txt')/ListItemAllFields" />
<link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/LockedByUser" type="application/atom+xml;type=entry" title="LockedByUser" href="Web/GetFileByServerRelativeUrl('/DropOffLibrary/b.txt')/LockedByUser" />
<link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/ModifiedBy" type="application/atom+xml;type=entry" title="ModifiedBy" href="Web/GetFileByServerRelativeUrl('/DropOffLibrary/b.txt')/ModifiedBy" />
<link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/Properties" type="application/atom+xml;type=entry" title="Properties" href="Web/GetFileByServerRelativeUrl('/DropOffLibrary/b.txt')/Properties" />
<link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/Versions" type="application/atom+xml;type=feed" title="Versions" href="Web/GetFileByServerRelativeUrl('/DropOffLibrary/b.txt')/Versions" />
<title />
<updated>2019-01-11T14:47:13Z</updated>
<author>
<name />
</author>
<content type="application/xml">
<m:properties>
<d:CheckInComment></d:CheckInComment>
<d:CheckOutType m:type="Edm.Int32">0</d:CheckOutType>
<d:ContentTag>{2BDD4E2D-79C8-4F6B-8DD7-AC745D9360A8},1,1</d:ContentTag>
<d:CustomizedPageStatus m:type="Edm.Int32">0</d:CustomizedPageStatus>
<d:ETag>"{2BDD4E2D-79C8-4F6B-8DD7-AC745D9360A8},1"</d:ETag>
<d:Exists m:type="Edm.Boolean">true</d:Exists>
<d:IrmEnabled m:type="Edm.Boolean">false</d:IrmEnabled>
<d:Length m:type="Edm.Int64">4</d:Length>
<d:Level m:type="Edm.Byte">255</d:Level>
<d:LinkingUrl></d:LinkingUrl>
<d:MajorVersion m:type="Edm.Int32">1</d:MajorVersion>
<d:MinorVersion m:type="Edm.Int32">0</d:MinorVersion>
<d:Name>b.txt</d:Name>
<d:ServerRelativeUrl>/DropOffLibrary/b.txt</d:ServerRelativeUrl>
<d:TimeCreated m:type="Edm.DateTime">2019-01-11T14:47:13Z</d:TimeCreated>
<d:TimeLastModified m:type="Edm.DateTime">2019-01-11T14:47:13Z</d:TimeLastModified>
<d:Title m:null="true" />
<d:UIVersion m:type="Edm.Int32">512</d:UIVersion>
<d:UIVersionLabel>1.0</d:UIVersionLabel>
<d:UniqueId m:type="Edm.Guid">2bdd4e2d-79c8-4f6b-8dd7-ac745d9360a8</d:UniqueId>
</m:properties>
</content>
</entry>
My assumption here is that the item id is either the value of the <id> tag or the value of the <UniqueId> tag, but neither have worked.
First you should set Accept header to application/json for your request so the result will be a bit better to read.
Item ID is an incremental integer in the library. You can add column ID to a view in the library to see the value for each file. From some reason this ID is missing in the response you get when the file is uploaded.
To get item by ID (best option) use:
/_api/web/lists/getByTitle('Drop Off Library')/items(1)
To get item by server relative url (also fine option) use:
/_api/web/getFileByServerRelativeUrl('/DropOffLibrary/b.txt')
UniqueId is a guid which cannot be easily used for querying the item. You would have to use $filter parameter, but it is not optimal due to performace impact.
/_api/web/lists/getByTitle('Drop Off Library')/items?$filter=GUID eq guid'2bdd4e2d-79c8-4f6b-8dd7-ac745d9360a8'

Acumatica - Get Notes Text into a Generic Inquiry

I have been trying to get Note Text to show up into a generic inquiry screen but it seems that it just shows a paperclip like an attachment but nothing is actually attached to it. It brings up the file manager when you click on the paperclip in the grid. Essentially the main goal here is to get the notes text to display in the results grid. I have setup a DAC that is from the Service Order table to the notes table. And I did the relation of ServiceOrder Left JOIN to Notes and the key field is the NoteID.
Here is the XML for the Generic Inquiry:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<data-set>
<relations format-version="3" relations-version="20170805" main-table="GIDesign">
<link from="GIFilter (DesignID)" to="GIDesign (DesignID)" />
<link from="GIGroupBy (DesignID)" to="GIDesign (DesignID)" />
<link from="GIMassAction (DesignID)" to="GIDesign (DesignID)" />
<link from="GIMassUpdateField (DesignID)" to="GIDesign (DesignID)" />
<link from="GINavigationScreen (DesignID)" to="GIDesign (DesignID)" />
<link from="GINavigationParameter (DesignID, ScreenID)" to="GINavigationScreen (DesignID, ScreenID)" />
<link from="GIOn (DesignID, RelationNbr)" to="GIRelation (DesignID, LineNbr)" />
<link from="GIRecordDefault (DesignID)" to="GIDesign (DesignID)" />
<link from="GIRelation (DesignID, ParentTable)" to="GITable (DesignID, Alias)" />
<link from="GIRelation (DesignID, ChildTable)" to="GITable (DesignID, Alias)" />
<link from="GIResult (DesignID)" to="GIDesign (DesignID)" />
<link from="GIResult (ObjectName, DesignID)" to="GITable (Alias, DesignID)" />
<link from="GISort (DesignID)" to="GIDesign (DesignID)" />
<link from="GITable (DesignID)" to="GIDesign (DesignID)" />
<link from="GIWhere (DesignID)" to="GIDesign (DesignID)" />
<link from="SiteMap (Url)" to="GIDesign (DesignID)" type="WeakByUrl" linkname="toDesignById" baseurl="~/GenericInquiry/GenericInquiry.aspx" paramnames="id" />
<link from="SiteMap (Url)" to="GIDesign (Name)" type="WeakByUrl" linkname="toDesignByName" baseurl="~/GenericInquiry/GenericInquiry.aspx" />
<link from="ListEntryPoint (ListScreenID)" to="SiteMap (ScreenID)" />
<link from="SiteMap (ScreenID)" to="GIDesign (PrimaryScreenIDNew)" linkname="to1Screen" />
<link from="SiteMap (NodeID)" to="SiteMap (ParentID)" type="WeakToParent" recursive-nesting="yes" include-parents="False" />
<link from="GIDesign (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GIFilter (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GIFilter (NoteID)" to="GIFilterKvExt (RecordID)" type="RowKvExt" />
<link from="GIGroupBy (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GIOn (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GIRelation (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GIResult (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GIResult (NoteID)" to="GIResultKvExt (RecordID)" type="RowKvExt" />
<link from="GISort (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GITable (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GIWhere (NoteID)" to="Note (NoteID)" type="Note" />
</relations>
<layout>
<table name="GIDesign">
<table name="GIFilter" uplink="(DesignID) = (DesignID)">
<table name="Note" uplink="(NoteID) = (NoteID)" />
<table name="GIFilterKvExt" uplink="(NoteID) = (RecordID)" />
</table>
<table name="GIGroupBy" uplink="(DesignID) = (DesignID)">
<table name="Note" uplink="(NoteID) = (NoteID)" />
</table>
<table name="GIMassAction" uplink="(DesignID) = (DesignID)" />
<table name="GIMassUpdateField" uplink="(DesignID) = (DesignID)" />
<table name="GINavigationScreen" uplink="(DesignID) = (DesignID)">
<table name="GINavigationParameter" uplink="(DesignID, ScreenID) = (DesignID, ScreenID)" />
</table>
<table name="GIRecordDefault" uplink="(DesignID) = (DesignID)" />
<table name="GISort" uplink="(DesignID) = (DesignID)">
<table name="Note" uplink="(NoteID) = (NoteID)" />
</table>
<table name="GITable" uplink="(DesignID) = (DesignID)">
<table name="GIRelation" uplink="(DesignID, Alias) = (DesignID, ParentTable)">
<table name="GIOn" uplink="(DesignID, LineNbr) = (DesignID, RelationNbr)">
<table name="Note" uplink="(NoteID) = (NoteID)" />
</table>
<table name="Note" uplink="(NoteID) = (NoteID)" />
</table>
<table name="GIResult" uplink="(Alias, DesignID) = (ObjectName, DesignID)">
<table name="Note" uplink="(NoteID) = (NoteID)" />
<table name="GIResultKvExt" uplink="(NoteID) = (RecordID)" />
</table>
<table name="Note" uplink="(NoteID) = (NoteID)" />
</table>
<table name="GIWhere" uplink="(DesignID) = (DesignID)">
<table name="Note" uplink="(NoteID) = (NoteID)" />
</table>
<table name="SiteMap" uplink="(DesignID) = (Url)" recursion="(NodeID) = (ParentID)" linkname="toDesignById">
<table name="ListEntryPoint" uplink="(ScreenID) = (ListScreenID)" />
</table>
<table name="SiteMap" uplink="(Name) = (Url)" recursion="(NodeID) = (ParentID)" linkname="toDesignByName">
<table name="ListEntryPoint" uplink="(ScreenID) = (ListScreenID)" />
</table>
<table name="SiteMap" uplink="(PrimaryScreenIDNew) = (ScreenID)" recursion="(NodeID) = (ParentID)" linkname="to1Screen">
<table name="ListEntryPoint" uplink="(ScreenID) = (ListScreenID)" />
</table>
<table name="Note" uplink="(NoteID) = (NoteID)" />
</table>
</layout>
<data>
<GIDesign>
<row DesignID="f6ed028b-51d9-49e0-a893-881ac49640cd" Name="ServOrderAuditHist" FilterColCount="3" PagerStyle="0" PageSize="0" NewRecordCreationEnabled="0" MassDeleteEnabled="0" AutoConfirmDelete="0" MassRecordsUpdateEnabled="0" MassActionsOnRecordsEnabled="0" ExposeViaOData="0">
<GIFilter LineNbr="1" IsActive="1" Name="Date" FieldName="audithistory.changeDate" DataType="string" DisplayName="Change Date" IsExpression="0" ColSpan="1" Required="0" />
<GITable Alias="audithistory" Name="PX.SM.AuditHistory">
<GIRelation LineNbr="1" ChildTable="serviceorder" IsActive="1" JoinType="L">
<GIOn LineNbr="1" ParentField="combinedKey" Condition="E " ChildField="srvOrdType" Operation="A" />
</GIRelation>
<GIResult LineNbr="2" IsActive="1" Field="batchID" IsVisible="1" DefaultNav="1" RowID="2846cf9b-219c-4a5a-b209-84fddc6c2340" />
<GIResult LineNbr="3" IsActive="1" Field="changeDate" IsVisible="1" DefaultNav="1" RowID="e87e8b9b-4e65-4d74-a09b-32f9b042a2d4" />
<GIResult LineNbr="4" IsActive="1" Field="changeID" IsVisible="1" DefaultNav="1" RowID="0323d539-ec30-422a-9095-6e9a32ad0b70" />
<GIResult LineNbr="5" IsActive="1" Field="=Replace([audithistory.CombinedKey],' ','')" Caption="CombinedKey" IsVisible="1" DefaultNav="1" RowID="50807018-a8a1-422f-b4c8-85f41db06ecd" />
<GIResult LineNbr="6" IsActive="1" Field="modifiedFields" Caption="ModifiedFields" IsVisible="1" DefaultNav="1" RowID="65ff668b-1a0c-4bb6-b302-541f45c96505" />
<GIResult LineNbr="7" IsActive="1" Field="operation" IsVisible="1" DefaultNav="1" RowID="e1afd786-abdc-4011-af1b-de9a6ca8c070" />
<GIResult LineNbr="8" IsActive="1" Field="screenID" IsVisible="1" DefaultNav="1" RowID="6a779a62-58db-4033-ab1e-317eb1b5d6eb" />
<GIResult LineNbr="9" IsActive="1" Field="tableName" IsVisible="1" DefaultNav="1" RowID="6de2b416-c264-434c-8c84-5090c756dd64" />
<GIResult LineNbr="10" IsActive="1" Field="userID" IsVisible="1" DefaultNav="1" RowID="e8a8e72b-8518-42e7-b5a9-82011f366c18" />
<GIResult LineNbr="11" IsActive="1" Field="userID_description" IsVisible="1" DefaultNav="1" RowID="687c4f34-7344-4ff8-9607-249e9ee74f88" />
<GIResult LineNbr="12" IsActive="1" Field="=LEFT([audithistory.CombinedKey], 3)" Caption="WOType" IsVisible="1" DefaultNav="1" RowID="2eb4a478-e697-4f16-832a-7f03ce8e453a" />
<GIResult LineNbr="13" IsActive="1" Field="=RIGHT([audithistory.CombinedKey], 6)" Caption="WONumber" IsVisible="1" DefaultNav="1" RowID="7acd89c5-b352-4fa3-a928-a2f786e3311f" />
</GITable>
<GITable Alias="notes" Name="PX.Data.Note">
<GIResult LineNbr="14" IsActive="1" Field="noteText" SchemaField="notes.NoteText" IsVisible="1" DefaultNav="1" RowID="2f941414-94f6-4225-b37e-a26fea9d6ad4" />
</GITable>
<GITable Alias="serviceorder" Name="FieldService.ServiceDispatch.FSServiceOrder">
<GIRelation LineNbr="2" ChildTable="notes" IsActive="1" JoinType="L">
<GIOn LineNbr="2" ParentField="noteID" Condition="E " ChildField="noteID" Operation="A" />
</GIRelation>
</GITable>
<GIWhere LineNbr="1" IsActive="1" DataFieldName="audithistory.screenID" Condition="E " IsExpression="0" Value1="SD300100" Operation="A" />
<GIWhere LineNbr="2" IsActive="1" DataFieldName="audithistory.operation" Condition="NE" IsExpression="1" Value1="D" Operation="A" />
<GIWhere LineNbr="3" IsActive="1" DataFieldName="audithistory.changeDate" Condition="G " IsExpression="0" Value1="[Date]" Operation="A" />
<GIWhere LineNbr="4" IsActive="1" OpenBrackets="( " DataFieldName="audithistory.combinedKey" Condition="RL" IsExpression="0" Value1="TPP" Operation="O" />
<GIWhere LineNbr="5" IsActive="1" DataFieldName="audithistory.combinedKey" Condition="RL" IsExpression="0" Value1="LOWE" CloseBrackets=") " Operation="A" />
<SiteMap linkname="toDesignById">
<row Position="20" Title="Service Order Audit History" Url="~/GenericInquiry/GenericInquiry.aspx?id=f6ed028b-51d9-49e0-a893-881ac49640cd" Expanded="0" IsFolder="0" ScreenID="GIFR0235" NodeID="8b0a25e3-3a83-4324-80a0-7b78fe4c1e8f" ParentID="7d6dc2e0-301d-4689-b8b1-ba2f28baa299">
<SiteMap Position="4" Title="Explore" Expanded="1" IsFolder="0" NodeID="7d6dc2e0-301d-4689-b8b1-ba2f28baa299">
<SiteMap Position="1" Title="Work Area" Description="main#DataEntryF" Expanded="0" IsFolder="0" NodeID="31c4a483-3979-498e-bcc7-4891839872f5">
<SiteMap Position="1" Title="Service Management" Url="~/Frames/Default.aspx" Expanded="0" IsFolder="0" ScreenID="SD000000" NodeID="abf4d047-7c3f-40fe-abc6-89f992c9b464">
<SiteMap Position="25" Title="Service" Url="~/Frames/Default.aspx" Expanded="0" IsFolder="0" ScreenID="FS000000" NodeID="1d096eb2-3eef-4206-b801-181debd3005d">
<SiteMap Position="0" Title="Sitemap Root" Url="~/Frames/Default.aspx" Expanded="0" IsFolder="0" ScreenID="00000000" NodeID="00000000-0000-0000-0000-000000000000" />
</SiteMap>
</SiteMap>
</SiteMap>
</SiteMap>
</row>
</SiteMap>
</row>
</GIDesign>
</data>
</data-set>
Note: There is another Table Left Join on here but it should not effect the results as it is confirmed working properly. I am also using Acumatica version 6.10.2118.
Update: In my GI instance there is another table called Audit History and the joining between this table to Service Order table is compromising the join between the Notes and Service Order table. Brendan's answer does work when another table is not involved.
Sorry I do not have field service configured in my instances so I didn't look at your example GI but you should be able to include the note text as a field if you Join the note table and display the NoteText field as shown below in a quick example...
Here is the exported GI I used to test. I tested in the latest 6.1 and 2017R2 builds and both worked. This export is from 6.10.2515:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<data-set>
<relations format-version="3" relations-version="20170805" main-table="GIDesign">
<link from="GIFilter (DesignID)" to="GIDesign (DesignID)" />
<link from="GIGroupBy (DesignID)" to="GIDesign (DesignID)" />
<link from="GIMassAction (DesignID)" to="GIDesign (DesignID)" />
<link from="GIMassUpdateField (DesignID)" to="GIDesign (DesignID)" />
<link from="GINavigationScreen (DesignID)" to="GIDesign (DesignID)" />
<link from="GINavigationParameter (DesignID, ScreenID)" to="GINavigationScreen (DesignID, ScreenID)" />
<link from="GIOn (DesignID, RelationNbr)" to="GIRelation (DesignID, LineNbr)" />
<link from="GIRecordDefault (DesignID)" to="GIDesign (DesignID)" />
<link from="GIRelation (DesignID, ParentTable)" to="GITable (DesignID, Alias)" />
<link from="GIRelation (DesignID, ChildTable)" to="GITable (DesignID, Alias)" />
<link from="GIResult (DesignID)" to="GIDesign (DesignID)" />
<link from="GIResult (ObjectName, DesignID)" to="GITable (Alias, DesignID)" />
<link from="GISort (DesignID)" to="GIDesign (DesignID)" />
<link from="GITable (DesignID)" to="GIDesign (DesignID)" />
<link from="GIWhere (DesignID)" to="GIDesign (DesignID)" />
<link from="SiteMap (Url)" to="GIDesign (DesignID)" type="WeakByUrl" linkname="toDesignById" baseurl="~/GenericInquiry/GenericInquiry.aspx" paramnames="id" />
<link from="SiteMap (Url)" to="GIDesign (Name)" type="WeakByUrl" linkname="toDesignByName" baseurl="~/GenericInquiry/GenericInquiry.aspx" />
<link from="ListEntryPoint (ListScreenID)" to="SiteMap (ScreenID)" />
<link from="SiteMap (ScreenID)" to="GIDesign (PrimaryScreenIDNew)" linkname="to1Screen" />
<link from="SiteMap (NodeID)" to="SiteMap (ParentID)" type="WeakToParent" recursive-nesting="yes" include-parents="False" />
<link from="GIDesign (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GIFilter (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GIFilter (NoteID)" to="GIFilterKvExt (RecordID)" type="RowKvExt" />
<link from="GIGroupBy (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GIOn (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GIRelation (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GIResult (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GIResult (NoteID)" to="GIResultKvExt (RecordID)" type="RowKvExt" />
<link from="GISort (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GITable (NoteID)" to="Note (NoteID)" type="Note" />
<link from="GIWhere (NoteID)" to="Note (NoteID)" type="Note" />
</relations>
<layout>
<table name="GIDesign">
<table name="GIFilter" uplink="(DesignID) = (DesignID)">
<table name="Note" uplink="(NoteID) = (NoteID)" />
<table name="GIFilterKvExt" uplink="(NoteID) = (RecordID)" />
</table>
<table name="GIGroupBy" uplink="(DesignID) = (DesignID)">
<table name="Note" uplink="(NoteID) = (NoteID)" />
</table>
<table name="GIMassAction" uplink="(DesignID) = (DesignID)" />
<table name="GIMassUpdateField" uplink="(DesignID) = (DesignID)" />
<table name="GINavigationScreen" uplink="(DesignID) = (DesignID)">
<table name="GINavigationParameter" uplink="(DesignID, ScreenID) = (DesignID, ScreenID)" />
</table>
<table name="GIRecordDefault" uplink="(DesignID) = (DesignID)" />
<table name="GISort" uplink="(DesignID) = (DesignID)">
<table name="Note" uplink="(NoteID) = (NoteID)" />
</table>
<table name="GITable" uplink="(DesignID) = (DesignID)">
<table name="GIRelation" uplink="(DesignID, Alias) = (DesignID, ParentTable)">
<table name="GIOn" uplink="(DesignID, LineNbr) = (DesignID, RelationNbr)">
<table name="Note" uplink="(NoteID) = (NoteID)" />
</table>
<table name="Note" uplink="(NoteID) = (NoteID)" />
</table>
<table name="GIResult" uplink="(Alias, DesignID) = (ObjectName, DesignID)">
<table name="Note" uplink="(NoteID) = (NoteID)" />
<table name="GIResultKvExt" uplink="(NoteID) = (RecordID)" />
</table>
<table name="Note" uplink="(NoteID) = (NoteID)" />
</table>
<table name="GIWhere" uplink="(DesignID) = (DesignID)">
<table name="Note" uplink="(NoteID) = (NoteID)" />
</table>
<table name="SiteMap" uplink="(DesignID) = (Url)" recursion="(NodeID) = (ParentID)" linkname="toDesignById">
<table name="ListEntryPoint" uplink="(ScreenID) = (ListScreenID)" />
</table>
<table name="SiteMap" uplink="(Name) = (Url)" recursion="(NodeID) = (ParentID)" linkname="toDesignByName">
<table name="ListEntryPoint" uplink="(ScreenID) = (ListScreenID)" />
</table>
<table name="SiteMap" uplink="(PrimaryScreenIDNew) = (ScreenID)" recursion="(NodeID) = (ParentID)" linkname="to1Screen">
<table name="ListEntryPoint" uplink="(ScreenID) = (ListScreenID)" />
</table>
<table name="Note" uplink="(NoteID) = (NoteID)" />
</table>
</layout>
<data>
<GIDesign>
<row DesignID="479b3a0d-2de4-4f8e-9b55-a19f3b46a36d" Name="testnote" FilterColCount="3" PagerStyle="0" PageSize="0" NewRecordCreationEnabled="0" MassDeleteEnabled="0" AutoConfirmDelete="0" MassRecordsUpdateEnabled="0" MassActionsOnRecordsEnabled="0" ExposeViaOData="0">
<GITable Alias="InventoryItem" Name="PX.Objects.IN.InventoryItem">
<GIRelation LineNbr="1" ChildTable="Note" IsActive="1" JoinType="L">
<GIOn LineNbr="1" ParentField="noteID" Condition="E " ChildField="noteID" Operation="A" />
</GIRelation>
<GIResult LineNbr="1" IsActive="1" Field="inventoryCD" IsVisible="1" DefaultNav="1" RowID="37044060-0fbb-48e5-a38f-1dc0becb6e6c" />
</GITable>
<GITable Alias="Note" Name="PX.Data.Note">
<GIResult LineNbr="2" IsActive="1" Field="noteText" IsVisible="1" DefaultNav="1" RowID="175f364b-607d-479d-b1c9-1008af652388" />
</GITable>
</row>
</GIDesign>
</data>
</data-set>

Acumatica - sitemap item does not show in modern UI

I just added a Sales Commissions report to sitemap and it shows in classic UI but not in modern UI. When I search for it in modern UI, result returns nothing. How my sitemap node looks like in project.xml:
<SiteMapNode>
<data-set>
<relations format-version="3" relations-version="20160101" main-table="SiteMap">
<link from="MUIScreen (NodeID)" to="SiteMap (NodeID)" />
<link from="MUIWorkspace (WorkspaceID)" to="MUIScreen (WorkspaceID)" type="FromMaster" linkname="workspaceToScreen" split-location="yes" updateable="True" />
<link from="MUISubcategory (SubcategoryID)" to="MUIScreen (SubcategoryID)" type="FromMaster" updateable="True" />
<link from="MUITile (ScreenID)" to="SiteMap (ScreenID)" />
<link from="MUIWorkspace (WorkspaceID)" to="MUITile (WorkspaceID)" type="FromMaster" linkname="workspaceToTile" split-location="yes" updateable="True" />
<link from="MUIArea (AreaID)" to="MUIWorkspace (AreaID)" type="FromMaster" updateable="True" />
<link from="MUIPinnedScreen (NodeID, WorkspaceID)" to="MUIScreen (NodeID, WorkspaceID)" type="WeakIfEmpty" isEmpty="Username" />
<link from="MUIFavoriteWorkspace (WorkspaceID)" to="MUIWorkspace (WorkspaceID)" type="WeakIfEmpty" isEmpty="Username" />
</relations>
<layout>
<table name="SiteMap">
<table name="MUIScreen" uplink="(NodeID) = (NodeID)">
<table name="MUIPinnedScreen" uplink="(NodeID, WorkspaceID) = (NodeID, WorkspaceID)" />
</table>
<table name="MUITile" uplink="(ScreenID) = (ScreenID)" />
</table>
<table name="MUIWorkspace">
<table name="MUIFavoriteWorkspace" uplink="(WorkspaceID) = (WorkspaceID)" />
</table>
<table name="MUISubcategory" />
<table name="MUIArea" />
</layout>
<data>
<SiteMap>
<row Position="1.5" Title="Sales Commissions" Url="~/Frames/ReportLauncher.aspx?ID=SO646000.rpx" Expanded="0" IsFolder="0" ScreenID="SO646000" NodeID="972cf181-504a-4df7-88d1-c4cb1a0c93d4" ParentID="85e0f6b3-8ae8-43aa-ad7b-ea4d4d5f381e" />
</SiteMap>
</data>
</data-set>
</SiteMapNode>
And a screenshot of my site map directory:
https://drive.google.com/open?id=1wp2xWqdx-0lbGE7xfDuD6bhtLrK1-I7i
Any ideas what might be happening? I tried recreating site map entry several times and still nothing.
You have to add it to the work space after adding to the sitemap. Just because you add it to the sitemap does not automatically add it to the new UI.
The help articles should help to walk you through editing the new UI. Here is an article that might help:
To Add a Link to a Workspace
More help...
Customizing the Modern User Interface
Workspaces in the Modern UI
Edit: If you already added the sitemap to your customization and later add the entry to a workspace, you need to update the sitemap entry in your customization project by reloading from the database (option under sitemap).

Ext Net TimeField in an editable grid

I have a grid panel which display two TimeSpans in two columns and all is well when I load the page but when I go server side the validation on my editors always fail. I don't understand why the store can display the TimeSpans but cannot return it after...
Here my code :
<ext:GridPanel ID="WeekParams" runat="server" >
<Store>
<ext:Store runat="server">
<Reader>
<ext:JsonReader IDProperty="GUID">
<Fields>
<ext:RecordField Name="Day" Type="String" />
<ext:RecordField Name="UATNumber" Type="int" />
<ext:RecordField Name="From" Type="Date" />
<ext:RecordField Name="To" Type="Date" />
</Fields>
</ext:JsonReader>
</Reader>
</ext:Store>
</Store>
<ColumnModel>
<Columns>
<ext:Column ColumnID="Day" DataIndex="Day" />
<ext:NumberColumn ColumnID="UATNumber" DataIndex="UATNumber" Format="0" />
<ext:DateColumn ColumnID="From" DataIndex="From" Format="dd/MM/yyyy" >
<Renderer Format="Date" FormatArgs="'HH:mm'" />
<Editor>
<ext:TimeField runat="server" />
</Editor>
</ext:DateColumn>
<ext:DateColumn ColumnID="To" DataIndex="To" Format="dd/MM/yyyy" >
<Renderer Format="Date" FormatArgs="'HH:mm'" />
<Editor>
<ext:TimeField runat="server" />
</Editor>
</ext:DateColumn>
</Columns>
</ColumnModel>
<Plugins>
<ext:EditableGrid runat="server" />
</Plugins>
</ext:GridPanel>
And here the result when I'm going to the server side :

Custom Ext.Net TreeGrid nodes?

I'm gonna create an Ext.Net's TreeGrid with custom nodes.
e.g :
All of TreeGrid's nodes should have a textbox at the front of itself and users should write a number at it.
See the below image :
Also, I have to get each nodes' textbox values in code behind at postback.
Could you please guide me, how I can create it with Ext.net and C# ?
Thanks.
Unfortunately, implementing these features with the current release of <ext:TreeGrid> in Ext.NET (v1.x) is annoyingly difficult. The <ext:TreeGrid> is just not setup for this type of rendering.
There's help coming in the next Ext.NET release (v2), although at this point it has not been released.
Here's a basic sample to help get you started with rendering the <input> fields.
Example
<%# Page Language="C#" %>
<%# Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>TreeGrid - Ext.NET Examples</title>
<link href="../../../../resources/css/examples.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
var formatHours = function (v) {
if (v || v === 0) {
return "Number : <input class=\"x-form-text x-form-field\" type=\"text\" value=\"" + v + "\" />";
}
return "";
};
</script>
</head>
<body>
<form runat="server">
<ext:ResourceManager runat="server" />
<ext:TreeGrid
ID="TreeGrid1"
runat="server"
Title="Projects"
Width="500"
Height="300"
NoLeafIcon="true"
EnableDD="true">
<Columns>
<ext:TreeGridColumn Header="Task" Width="230" DataIndex="task" />
<ext:TreeGridColumn Header="Score" Width="200" DataIndex="duration" Align="Center" SortType="AsFloat">
<XTemplate runat="server">
<Html>
{duration:this.formatHours}
</Html>
<Functions>
<ext:JFunction Name="formatHours" Fn="formatHours" />
</Functions>
</XTemplate>
</ext:TreeGridColumn>
</Columns>
<Root>
<ext:TreeNode Text="Tasks">
<Nodes>
<ext:TreeNode Icon="Folder" Expanded="true">
<CustomAttributes>
<ext:ConfigItem Name="task" Value="Project: Shopping" Mode="Value" />
</CustomAttributes>
<Nodes>
<ext:TreeNode Icon="Folder" Expanded="true">
<CustomAttributes>
<ext:ConfigItem Name="task" Value="Remodeling" Mode="Value" />
</CustomAttributes>
<Nodes>
<ext:TreeNode Icon="Folder">
<CustomAttributes>
<ext:ConfigItem Name="task" Value="Paint bedroom" Mode="Value" />
</CustomAttributes>
<Nodes>
<ext:TreeNode Leaf="true">
<CustomAttributes>
<ext:ConfigItem Name="task" Value="Ceiling" Mode="Value" />
<ext:ConfigItem Name="duration" Value="1.25" />
</CustomAttributes>
</ext:TreeNode>
<ext:TreeNode Leaf="true">
<CustomAttributes>
<ext:ConfigItem Name="task" Value="Walls" Mode="Value" />
<ext:ConfigItem Name="duration" Value="1.5" />
</CustomAttributes>
</ext:TreeNode>
</Nodes>
</ext:TreeNode>
<ext:TreeNode Leaf="true">
<CustomAttributes>
<ext:ConfigItem Name="task" Value="Decorate living room" Mode="Value" />
<ext:ConfigItem Name="duration" Value="12" />
</CustomAttributes>
</ext:TreeNode>
<ext:TreeNode Leaf="true">
<CustomAttributes>
<ext:ConfigItem Name="task" Value="Fix lights" Mode="Value" />
<ext:ConfigItem Name="duration" Value="0" />
</CustomAttributes>
</ext:TreeNode>
<ext:TreeNode Leaf="true">
<CustomAttributes>
<ext:ConfigItem Name="task" Value="Reattach screen door" Mode="Value" />
<ext:ConfigItem Name="duration" Value="142" />
</CustomAttributes>
</ext:TreeNode>
<ext:TreeNode Leaf="true">
<CustomAttributes>
<ext:ConfigItem Name="task" Value="Retile kitchen" Mode="Value" />
<ext:ConfigItem Name="duration" Value="96" />
</CustomAttributes>
</ext:TreeNode>
</Nodes>
</ext:TreeNode>
</Nodes>
</ext:TreeNode>
</Nodes>
</ext:TreeNode>
</Root>
</ext:TreeGrid>
</form>
</body>
</html>
I could found the answer :
<ext:TreeGrid ID="KnowledgeFieldsTreeGridWithTextBox1" runat="server" Title="Fileds "
Icon="Plugin" Height="300" AutoHeight="true" AutoExpandColumn="KnowledgeFiled">
<TopBar>
<ext:Toolbar ID="KnowledgeFieldsTreeGridWithTextBoxToolbar1" runat="server">
<Items>
<ext:ToolbarFill ID="KnowledgeFieldsTreeGridWithTextBoxToolbarFill1" runat="server" />
<ext:ToolbarTextItem ID="KnowledgeFieldsTreeGridWithTextBoxTextItem1" runat="server"
Text=" Filter : " />
<ext:TriggerField ID="KnowledgeFieldsTreeGridWithTextBox_TriggerField1" runat="server" EnableKeyEvents="true">
<Triggers>
<ext:FieldTrigger Icon="Clear" />
</Triggers>
<Listeners>
<KeyUp Fn="KnowledgeFieldsTreeGridWithTextBox_KeyUp" Buffer="250" />
<TriggerClick Fn="KnowledgeFieldsTreeGridWithTextBox_ClearFilter" />
</Listeners>
</ext:TriggerField>
</Items>
</ext:Toolbar>
</TopBar>
<Columns>
<ext:TreeGridColumn Header="Filed Name" DataIndex="KnowledgeFiledName" Width="100" Align="Center" />
<ext:TreeGridColumn Header="Score" DataIndex="KnowledgeScore" Width="200" Align="Right">
<XTemplate runat="server">
<Html>
<tpl if="values.leaf">
<input type="text" style="width:30px; text-align:left;" maxlength="5" value="{KnowledgeFiledScore}"></input>
</tpl>
</Html>
</XTemplate>
</ext:TreeGridColumn>
</Columns>
<Root>
</Root>
<Listeners>
<BeforeClick Handler="return !Ext.fly(e.getTarget()).is('input[type=text]');" />
</Listeners>
</ext:TreeGrid>

Resources