Low-key humor and deep insights into history and development of Business Central. I absolutely recommend this playlist of videos for everybody that wants to have deep insight into functionality of Business Central. Thank you, Erik, you are the best!
Thanks for the overview! You mentioned sending/receiving the blobs via web services - I think that would be nice to get a demo on. ControlAddins can only send/receive "serializable" variables, that is, non-complex types like Text, Int, Boolean, and even JsonObject/JsonArray, but not Dictionary/List - Dictionaries/Lists aren't even valid return types in procedures, which surprised me even more, but there are more complex types that behave in this weird way. There's therefor no way of sharing a blob back and forth with JavaScript in that session. :/ Unbound Actions can only send/receive simple types like Text (not types like JsonObject or Dictionary or Blob streams). It seems like we can't share large data in a GUI session without chunking it into smaller Text based requests and it seems like WebService sessions always need a bound entity with a Blob field and a trigger to receive data and perform some additional logic. It sounds like you had some more insight on this area so I'd be glad to hear more about it. :)
Thanks Erik, another great video. Wondering, what is the difference between using the persistent storage or just having a blob field on my table... I’ve been using the ladder.
Things that I didn't like when microsoft introduce Blob Storage module (and mark TempBlob table for removal) is that we lost Codeunit.Run(TempBlob) and a lot of usefull functions from TempBlob table (ReadAs..., WriteAsXml..), and we used this widely, so we decided to switch to Name Value Buffer table, similar like TempBlob, mostly used like temp, and has Value Blob field, but also needed to implement many functions that we had in TempBlob.
Hi Eric, did you create a video about storing a PDF document on a Web Service Page. As example having af list Page of posted sales invoices in which there is a BLOB field with PDF of the posted invoice.
Nope, haven't done videos about that. It's compilcated because you cannot change the Content-Type of a webservice, so blob has to be baase64 encoded and stored in either json or soap.
Thank you for your videos Erik. In both cases (PersistentBlob and TempBlob) you first save the image to the "Memory Blob" and then you export it from there and import into the "Field blob". Can you save it to the "Field Blob" directly?
Hi Erik, thanks for the video. I forked your repo to play with it and got build error on "Temp Blob" and "Base64 Convert" CodeUnits, how should i proceed to get it?
@@Hougaard Is it allowed when running On-Premises to grab a file silently from the BC server? In TempBlob Record, there was a Blob.Import function to handle that. Is that possible when running Web client On-Premsies?
Low-key humor and deep insights into history and development of Business Central. I absolutely recommend this playlist of videos for everybody that wants to have deep insight into functionality of Business Central.
Thank you, Erik, you are the best!
Thank you Erik. When working with webservices blobs are an essential aspect. Really useful how-to. Keep up the great work!
Thanks for the overview! You mentioned sending/receiving the blobs via web services - I think that would be nice to get a demo on.
ControlAddins can only send/receive "serializable" variables, that is, non-complex types like Text, Int, Boolean, and even JsonObject/JsonArray, but not Dictionary/List - Dictionaries/Lists aren't even valid return types in procedures, which surprised me even more, but there are more complex types that behave in this weird way. There's therefor no way of sharing a blob back and forth with JavaScript in that session. :/
Unbound Actions can only send/receive simple types like Text (not types like JsonObject or Dictionary or Blob streams).
It seems like we can't share large data in a GUI session without chunking it into smaller Text based requests and it seems like WebService sessions always need a bound entity with a Blob field and a trigger to receive data and perform some additional logic.
It sounds like you had some more insight on this area so I'd be glad to hear more about it. :)
I have a video planned that's going to feed blobs to user controls, stay tuned ;)
Thanks Erik, another great video.
Wondering, what is the difference between using the persistent storage or just having a blob field on my table... I’ve been using the ladder.
You're doing it right :)
Things that I didn't like when microsoft introduce Blob Storage module (and mark TempBlob table for removal) is that we lost Codeunit.Run(TempBlob) and a lot of usefull functions from TempBlob table (ReadAs..., WriteAsXml..), and we used this widely, so we decided to switch to Name Value Buffer table, similar like TempBlob, mostly used like temp, and has Value Blob field, but also needed to implement many functions that we had in TempBlob.
How about submitting a pull request for Blob Storage? ruclips.net/video/3Q9ikdBYJvQ/видео.html
Thanks, Keep teaching us :D
Also Can you please make video on SOAP web services?
What's your client environment? (C# ?)
Hi Eric, did you create a video about storing a PDF document on a Web Service Page. As example having af list Page of posted sales invoices in which there is a BLOB field with PDF of the posted invoice.
Nope, haven't done videos about that. It's compilcated because you cannot change the Content-Type of a webservice, so blob has to be baase64 encoded and stored in either json or soap.
@@Hougaard Hi Erik, can you create example for me (and others) because one client has this need. It is BC version 14 OnPrem.
I noticed you seem to have an VS Code addin that shows LOC and Comments in the status bar. Which addin is that?
This one: marketplace.visualstudio.com/items?itemName=lyzerk.linecounter
Thank you for your videos Erik. In both cases (PersistentBlob and TempBlob) you first save the image to the "Memory Blob" and then you export it from there and import into the "Field blob". Can you save it to the "Field Blob" directly?
Yes, but that would defeat the purpose of the video :) :) :)
@@Hougaard I've supposed that. Thank you! :)
Hi Erik, thanks for the video.
I forked your repo to play with it and got build error on "Temp Blob" and "Base64 Convert" CodeUnits, how should i proceed to get it?
Have you downloaded symbols?
@@Hougaard oh, i was missing this. Now it worked, thanks!
Did you have a situation when you want to silently upload file (without showing dialog box) on web client? And how did you manage that?
So silently grab a random file from the client? That's not allowed for web browsers.
@@Hougaard Is it allowed when running On-Premises to grab a file silently from the BC server? In TempBlob Record, there was a Blob.Import function to handle that. Is that possible when running Web client On-Premsies?
Thank for video. But how can I prevent the blob field size to 40kb
You can see the size of a TempBlob codeunit...
Hi Erik, Any hint on how to get Danish characters correctly to Business Central SaaS tables from a text file that have ANSI encoding.
You gotta use TextEncoding::Windows on a stream.
@@Hougaard thanks. But TextEncoding::Windows does not work on BC SaaS version
@@RaiBilalHaider Yes it does!
@@Hougaard okay if you are saying then it should work. I will try again, may be something I am missing.
Nice job Erik. Is there any way to preview PDF files on Business Central without download the file? Thanks
Check AJ Kaufmann's blog, he has an example of that.
@@Hougaard Thanks. Looks like it will not be a easy task.
nice Commodore 64 in the back
Good eyes my friend.... The most visible is actually a VIC-20, sitting on top of a c64c and then there's a breadbin c64 behind the books