NetTalk Central

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - rjolda

Pages: 1 2 [3] 4 5 ... 25
31
Web Server - Ask For Help / Re: Strategies to refresh client browse
« on: March 02, 2025, 05:47:48 AM »
HI Alberto,
Going to try this right now.
Thank you,
Ron

32
Web Server - Ask For Help / Re: Strategies to refresh client browse
« on: March 01, 2025, 03:33:29 AM »
Hi Jane,
Thanks - will give it a try this weekend. 
Ron

33
Johan,
Did you implement this yet in Net Talk?  I would be interested in seeing how you did this.
Ron

34
Web Server - Ask For Help / Strategies to refresh client browse
« on: February 28, 2025, 06:41:35 AM »
Hi All,
C11  NT 14.21
I have a browse which contains 1 to 4 records.  I want to update it automatically maybe every 3 seconds. I don't really need to track anything momentarily so I don't need continuous communication with the server.  I was thinking of a few strategies:
1. Put a hidden button on the browse to use the procedure timer to fire every 3 seconds to get a browse refresh. 
2. Maybe I could send the Record time stamp from the client to the server using a button like #1 and if the time stamp ( for each record ) is different on the server, then refresh the data on the client browse row.
This seems a lot like the disconnected mobile app communication stuff - comparing time stamps, etc. So, is there a built in or easy method to refresh a single browse say every 3 seconds?
BTW, this is NOT a disconnected mobile app. 
Thanks,
Ron

35
Web Server - Ask For Help / Re: Credit Card Chip Reader
« on: February 10, 2025, 03:32:26 PM »
Hi Ken,
How about a device which connects to your tablet?

https://www.shopify.com/pos/store/products/shopify-tap-chip-card-reader?utm_source=google&utm_medium=cpc&campaignid=20029254666&utm_campaign=RetailPOS_Shopping_AMER_US_Hardware&utm_content=shopify_tap_chip_card_reader&_bt=656383153811&_bk=&_bm=&_bn=g&_bg=148273362693&gclsrc=aw.ds&gad_source=1&gclid=EAIaIQobChMI_cPn86C6iwMVihqtBh3mIgJoEAQYASABEgJxzvD_BwE

If I were going to build it from scratch I probably would interface with an arduino and use arduino libraries to decipher the card and send me the info into my clarion program via serial terminal.  Working with Arduino is very easy.  Arduino has NFC and chip reader libraries. 

There are 2 suggestions to get you started.  It really depends on how you want to do it.

Ron

36
Web Server - Ask For Help / Re: Microservices?
« on: February 08, 2025, 09:05:46 AM »
Hi,
I don' t know anything about microservices but simple research suggests that it might be like an API which you can do easily with net talk.
What is your goal or what are you trying to do?
Ron

37
HI Poul,
I ran into this because my cable provider blocks port 80.  Thus when LetsEncrypt went to port 80 to retrieve the message to prove that this is the machine for the certificate, it failed the challenge.  SO, port 80 was the problem for me.  Bruce has another method for using DNS instead of direct challenge but you have to use a DNS provider which allows you to change some of the parameters. Bruce has them listed.  In my case, I just bought a SSL certificate from GoDaddy - that was the easiest solution in my particular case.
Ron

38
Hi All
NT 14.16  C11
I am trying to give the user the option to display browses and forms in Table or in Flexbox. (As an old guy, I like to see things in tables and they make more sense) - so, I vote for Tables and if I am going to look at them on a mobile device, I will turn the display to horizontal to see the whole table width.   The young kids consume their web data differently and like the flex box display. 
So, I know that I can set the defaults in Web Server and it sets: 
s_web._SitesQueue.Defaults.FormLayoutMethod = Net:Table   [for Tables]
  s_web._SitesQueue.Defaults.BrowseLayoutMethod = Net:Table
and
s_web._SitesQueue.Defaults.FormLayoutMethod = Net:Div   [for flex grid]
  s_web._SitesQueue.Defaults.BrowseLayoutMethod = Net:Div
  s_web._SitesQueue.Defaults.ChildrenLayoutMethod = Net:Div

Each procedure calls a local layout method which is either from the  SitesQueue:
  loc:LayoutMethod =  p_web.site.BrowseLayoutMethod
or is set at the procedure level something like:
   loc:LayoutMethod =Table

I want to give each user the ability to use the Table or FlexGrid option to view their data - I anticipate giving them a default setting on login or run-time.

QUESTION:  What is the easiest way to do this?

I may be able to replace the value of  s_web._SitesQueue.Defaults.FormLayoutMethod = Net:Table    with s_web._SitesQueue.Defaults.FormLayoutMethod = Net:Div and give the user a choice.  Is that a good idea or will this change it for all users?  I think it will change it for only the current session but I am not certain about that.

I could also trap the s_web._SitesQueue.Defaults.FormLayoutMethod = Net:Div  at the procedure level and replace that with a Session Value that I have set.  I would have to do this for each procedure.

Any Thoughts?
Thanks,
Ron

39
Web Server - Ask For Help / Re: Filter error on compile
« on: December 17, 2024, 02:10:55 AM »
Hi Johan,
A couple of things I have found.  If it had a filter and the filter is removed, that happens - solution - filter is: "1 = 2"
Second, the app generator builds all kind of forms and browses linked to forms, etc. - it is trying to do it according to the file relationships.  I have had to delete relationships so that the TEMPLATEs would not complain. I have found that sometimes it is easier to add necessary relationships in after APPGEN does its thing.
So, putting in a filter there or deleting the Child of Browse would do the trick.
Ron

40
Alberto,
Got it. Thanks,
ROn

41
Hi,
C11 NT14.24
I am trying to hide some buttons if a Browse is called as a CHILD BROWSE in a MemoryForm.
Is there something that I can trap to indicate that it is a CHILD in a MemoryForm?
Ron

42
Hi Johan,
Look at the previous posts.  They really tell the story.  It took me several tries but I finally got it right.
You need to make a set of icons - favicons - according to the requirements for mobile device.  The program to do this is listed in the post.
Then follow the steps.  The crucial thing is placing the tags in the NT web page.  Again, the posts give the embed code and the location to put it in.
Move the icons, etc. to your server and it just runs.  People can use the Hamburg menu on their cell phone to download it to their home screen.  It places your icon on their device and links it to your program. It just works!
Apple would love you to put your app in their store - and they will happily take 30 % of all your revenue through the app.
I am not sure about Android.
I have not paid attention to the stores - I am not sure if the apps need to be native apps or not.  Mine is NOT NATIVE mobile app.  Mine is for a limited audience so I am not looking for world presence.
So, look back at the posts and if you have questions or get stuck, yell at us.
I hope folks who have insight about app stores will jump in as well.
Good luck,
Ron

43
Web Server - Ask For Help / Re: Browse filtering using timestamp field
« on: December 05, 2024, 03:27:42 AM »
Hi,
What I do with complex filters is place them in the embed 2 - Before Browse Loop ---10a Set Filter.  Photo attached.  I put them here instead of in the template Filter line if they are complex
The filter is just a string. 
When writing complex filters I will often build a string and check the string.
The filter you want is loc:FilterWas -  that will hold your new filter. 
Here is some example code:

 if p_web.GSV('FROM') = 'OWNER'     
        if p_web.GSV('loc:datepick')> 0  ! we have chosen a date range
                   if daterange> 0  ! we have chosen a date range
                       if daterange = 1
                           filterstring = 'JSRV:TDATE = ' & onedate & ' AND ' &  'UPPER(JSRV:OWNR_GUID) =  <39>'  & UPPER(p_web.GSV('LOGGED OWNER_GUID')) & '<39>'
                          loc:FilterWas = filterstring
                       elsif daterange = 2
                           filterstring =  'JSRV:TDATE >= ' & dfrom & ' AND JSRV:TDATE <= ' & dto & ' AND ' &  'UPPER(JSRV:OWNR_GUID) =  <39>'  & UPPER(p_web.GSV('LOGGED OWNER_GUID')) & '<39>'
                          loc:FilterWas = filterstring
                       end
                   end     
                       
                       
                     
        else  ! no date range - standard inquiry - show last 30 days
           !loc:FilterWas = 'UPPER(JSRV:OWNR_GUID) =  <39>'  & UPPER(p_web.GSV('LOGGED OWNER_GUID')) & '<39>'   ! go back 30 days on routine request 
            filterstring = 'UPPER(JSRV:OWNR_GUID) =  <39>'  & UPPER(p_web.GSV('LOGGED OWNER_GUID')) & '<39>' & ' AND JSRV:TDATE >= ' & today() -30  & ' AND JSRV:TDATE <= ' & today()
            loc:FilterWas = filterstring
        end

Hope this helps you get squared away.
Ron

44
HI,
Also found that you can use the Check Box Tab for a check box and use the True Text and False Text to get the same result except the text is now inside the button !
Check box field is Byte - 0/1
Ron

45
Mike,
This is a clearer example of having check on LEFT and text on right.  I have a screen shot of template ( Hide Prompt and put Text in COMMENT and SHOW comment only).
Ron

BTW - the Layout for this Form is TABLE ( not Grid or Flex)
Ron

Pages: 1 2 [3] 4 5 ... 25