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 ... 23
1
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

2
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

3
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

4
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

5
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

6
Alberto,
Got it. Thanks,
ROn

7
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

8
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

9
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

10
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

11
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

12
Web Server - Ask For Help / Close BROWSE procedure
« on: November 29, 2024, 03:16:56 AM »
Hi,
 C11.0.136    NT 14.21
Bruce offered this to close a FORM  ===>   p_web.ntform(loc:formName,'clickClose')
However, this appears to be for FORMS only.   This appears in Browse code but appears to refer to the FORM for the browse
Question:  How do I close a NT BROWSE procedure in code?
Thanks,
Ron

13
Web Server - Ask For Help / Re: h2 Header styling - trying to apply color
« on: November 22, 2024, 02:23:41 AM »
THanks Jane,
I kept trying it with a .h2 and .<h2> , etc and could not get it to work in my custom css.  In line worked once I added the span tag. 
Thanks for the help on getting this in my custom css.
Ron

14
HI Mike,
I use the code p_web.Script( p_web.WindowOpen( 'YourProcedure')) in several ways.

1. I have a button which selects a line from a browse to use as a reference during the session.
  when the user presses this button and my code is done the last line of my code can be - p_web.Script( p_web.WindowOpen( 'IndexPage')) and it will go there.  However, I prefer the second approach.

2. The same browse is called from two different procedures which are menus.  To return to the menu which called this browse I pass a paramenter - 'IR=YES'  or 'IR=YES_SM' .
in the browse,  % BeforeFormTag/5000 embed:
   if P_web.gsv('loc:IR') = 'YES' or P_web.gsv('loc:IR') = 'YES_SM'
        p_web.SSV('SubHeading', 'Please Select Auto Dealership for this Service!')
      !  loc:selecting = true
  end
       
         
      IF  P_web.gsv('loc:IR') = 'YES_SM'
            loc:CloseAction = 'A_MOBILEBUTTON_MEMFORM'   ! call small menu
        else
            loc:CloseAction = 'INDEXPAGE'  ! go back to index page for large menu
      END
    This is where the action is set to perform when the Close Button is pressed.  So, when the user picks a record. I pop up a message that identifies the chosen record and then prompts them to press the CLOSE button.  I prefer code 2 so that I make sure that each procedure I open is closed correctly.

[Behind the scenes.  How did I get there... I put the procedure name to run in the Template when the close button is pressed.  I then looked at the code and the Close button uses loc:CloseAction as a reference to the procedure to run when CLOSE is pressed.  I then looked at where the template assigned the value to the loc:CloseAction.  It is way up in the code before calling the form tag.  So, right after the Template assigned it, I popped in my code to overwrite that assignment to the one I wanted to be run - hence, the code above....]
Ron     

15
Web Server - Ask For Help / Re: h2 Header styling - trying to apply color
« on: November 21, 2024, 03:23:04 AM »
HI Vinnie,
Thanks  - I was missing the span  ... /span part of it. 
Got it working.
Ron

Pages: [1] 2 3 ... 23