-
Content Count
40 -
Joined
-
Last visited
-
Days Won
4
Everything posted by Eli M.
-
Generating one-to-many on the fly with Live Bindings
Eli M. replied to Primož Gabrijelčič's topic in FMX
It doesn't matter to me whether you use LiveBindings or not. I use it where appropriate and it saves me time. Obviously in your use case you claim it did not save you time. Use the right tool for the job. -
Generating one-to-many on the fly with Live Bindings
Eli M. replied to Primož Gabrijelčič's topic in FMX
Maybe the problem is not specifically LiveBindings but trying to do too much on a single mobile screen at the same time. This project uses a number of different livebinded fields: https://community.embarcadero.com/article/16633-deep-dive-field-service-app-template-for-android-and-ios-with-rad-studio-10-2-tokyo -
How can I serialize a TFieldList into a JSON string ?
Eli M. replied to Stéphane Wierzbicki's topic in Network, Cloud and Web
Looks like it saves the definition to me? {"FDBS":{"Version":15,"Manager":{"UpdatesRegistry":true,"TableList":[{"class":"Table","Name":"FDQueryTenants","SourceName":"tenants","SourceID":1,"TabID":0,"EnforceConstraints":false,"MinimumCapacity":50,"ColumnList":[{"class":"Column","Name":"TENANTID","SourceName":"TENANTID","SourceID":1,"DataType":"WideString","Size":144,"Searchable":true,"FixedLen":true,"Base":true,"OInUpdate":true,"OInWhere":true,"OriginTabName":"TENANTS","OriginColName":"TENANTID","SourceSize":144},{"class":"Column","Name":"TENANTNAME","SourceName":"TENANTNAME","SourceID":2,"DataType":"WideString","Size":256,"Searchable":true,"Base":true,"OInUpdate":true,"OInWhere":true,"OriginTabName":"TENANTS","OriginColName":"TENANTNAME","SourceSize":256}],"ConstraintList":[],"ViewList":[],"RowList":[{"RowID":0,"Original":{"TENANTID":"00000000-0000-0000-0000-000000000001","TENANTNAME":"Initial tenant"}}]}],"RelationList":[],"UpdatesJournal":{"Changes":[]}}}} -
My only suggestion would be try various forms of quoting it with double quotes and brackets. You tried some but maybe not using double quotes? https://docs.microsoft.com/en-us/sql/t-sql/statements/set-quoted-identifier-transact-sql?view=sql-server-2017 Also you could copy the FireDAC source file where it throws the error from to your project and modify it as a workaround.
-
Generating one-to-many on the fly with Live Bindings
Eli M. replied to Primož Gabrijelčič's topic in FMX
I use LiveBindings all the time in mobile apps so not sure what mausmb is going on about. Anyway, yeah, I don't see a way to make your code any less than it is. It's only 4 lines of code. Trying to think if putting it into a TFDMemTable first helps at all and I don't see that it does. In Edit1ChangeTracking with a for loop and TFDMemTable.AppendRecord you might be able to pack it into 3-4 lines. Might give you better flexibility with the data later. -
How can I serialize a TFieldList into a JSON string ?
Eli M. replied to Stéphane Wierzbicki's topic in Network, Cloud and Web
It has built in support to save out to JSON. https://flixengineering.com/archives/299 -
[Fmx,iOS,Android] TWebBrowser howto handle downloads
Eli M. replied to Rollo62's topic in Cross-platform
On IOS the WebView create isn't as clear cut but maybe can be modified in a similar fashion in: FMX.WebBrowser.Cocoa.pas -
[Fmx,iOS,Android] TWebBrowser howto handle downloads
Eli M. replied to Rollo62's topic in Cross-platform
Can trap and do things with the URL before navigation in OnShouldStartLoadWithRequest (should work correctly in Delphi 10.3 Rio in theory): https://stackoverflow.com/questions/23416086/callback-delphi-function-from-twebbrowser-by-javascript-on-delphi-xe6-for-all-pl Can modify the settings of the Android WebView here (copy the file to your project and edit) FMX.WebBrowser.Android.pas constructor TAndroidWebBrowserService.Create; var LayoutParams: JRelativeLayout_LayoutParams; begin FWebView := TJWebBrowser.JavaClass.init(TAndroidHelper.Activity); FWebView.getSettings.setJavaScriptEnabled(True); FListener := TWebBrowserListener.Create(Self); FWebView.SetWebViewListener(FListener); FFocusChangeListener := TFocusChangeListener.Create(Self); FWebView.setOnFocusChangeListener(FFocusChangeListener); FWebView.getSettings.setGeolocationEnabled(True); FWebView.getSettings.setAppCacheEnabled(True); FWebView.getSettings.setDatabaseEnabled(True); FWebView.getSettings.setDomStorageEnabled(True); FWebView.getSettings.setBuiltInZoomControls(True); FWebView.getSettings.setDisplayZoomControls(False); FWebViewContainer := TJRelativeLayout.JavaClass.init(TAndroidHelper.Context); FChildrenContainer := TJRelativeLayout.JavaClass.init(TAndroidHelper.Context); LayoutParams := TJRelativeLayout_LayoutParams.JavaClass.init(TJViewGroup_LayoutParams.JavaClass.MATCH_PARENT, TJViewGroup_LayoutParams.JavaClass.MATCH_PARENT); FWebViewContainer.addView(FWebView, LayoutParams); LayoutParams := TJRelativeLayout_LayoutParams.JavaClass.init(TJViewGroup_LayoutParams.JavaClass.MATCH_PARENT, TJViewGroup_LayoutParams.JavaClass.MATCH_PARENT); FWebViewContainer.addView(FChildrenContainer, LayoutParams); SetEnableCaching(True); end; -
The single feed is decent enough. The test feed seems better than the plugin feed because the plugin feed has HTML in the description. The only draw back vs. pulling each individual forum is with the forum pull the forum/category of the post is known. The all feed doesn't have that though RSS probably has a field for it. TListView on the other hand is entirely unsuitable for displaying the feed however.
-
Attempting to change my password pops an error box for me on it.