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.
1
Web Server - Ask For Help / Re: h2 Header styling - trying to apply color
« on: Today at 03:23:04 AM »
HI Vinnie,
Thanks - I was missing the span ... /span part of it.
Got it working.
Ron
Thanks - I was missing the span ... /span part of it.
Got it working.
Ron
2
Web Server - Ask For Help / h2 Header styling - trying to apply color
« on: November 20, 2024, 04:43:37 PM »
Hi,
I am trying to apply red color to the h2 header - I tried in-line styling which did not work. I want the header h2 line to always be red at the top of the page.
Anyone done this and willing to share?
Thanks,
Ron
I am trying to apply red color to the h2 header - I tried in-line styling which did not work. I want the header h2 line to always be red at the top of the page.
Anyone done this and willing to share?
Thanks,
Ron
3
Web Server - Ask For Help / Re: Issues displaying NetTalk camera images in a Windows application.
« on: November 11, 2024, 03:11:26 AM »
HI, NT stores the pictures in the images folder under the web folder as PMG files. NT apps should be able to save to BLOB and to the images folder. Can you access the png images in the images folder. You should be able to view these images on your NT server with any program which will open a graphic. If you can do this, try your windows APP. It should be able to open this as well.
I am not sure what you are really trying to say about your image in a BLOB and your windows application. However, Web applications can open images delivered from blobs almost natively. That does NOT exist in desktop applications. On desktop, try using BlobToFile in String theory and save it to disk and use that image file in your web app. You can delete the image file when procedure is done.
Maybe this will get you started.
Ron
I am not sure what you are really trying to say about your image in a BLOB and your windows application. However, Web applications can open images delivered from blobs almost natively. That does NOT exist in desktop applications. On desktop, try using BlobToFile in String theory and save it to disk and use that image file in your web app. You can delete the image file when procedure is done.
Maybe this will get you started.
Ron
4
Web Server - Ask For Help / Re: Can you make CheckBoxes with the Button on the Leftt and Text on the Right ?
« on: November 07, 2024, 01:52:11 AM »
Mike,
Templates have a LOT in them. A lot of things are not what they seem to be. You just have to ask questions and experiment! Incredible stuff is doable with NT and even more with NT and css. I try to do as much in NT as I can. My custom.css is very tiny.
Ron
Templates have a LOT in them. A lot of things are not what they seem to be. You just have to ask questions and experiment! Incredible stuff is doable with NT and even more with NT and css. I try to do as much in NT as I can. My custom.css is very tiny.
Ron
5
Web Server - Ask For Help / Re: Can you make CheckBoxes with the Button on the Leftt and Text on the Right ?
« on: November 06, 2024, 04:45:17 AM »
i Mike,
I am doing that with native NT. Initially, I had a consultant help me and he did it in css by working around the NT css as custom css. That was somewhat fragile so I deleted the custom CSS and did this in NT alone:
Checkbox at left. Description at right. Now, I don't have to fudge css every time I want to play with it.
I have attached some screen pics to help explain.
Ron
I am doing that with native NT. Initially, I had a consultant help me and he did it in css by working around the NT css as custom css. That was somewhat fragile so I deleted the custom CSS and did this in NT alone:
Checkbox at left. Description at right. Now, I don't have to fudge css every time I want to play with it.
I have attached some screen pics to help explain.
Ron
6
Web Server - Ask For Help / Re: Can you make CheckBoxes with the Button on the Leftt and Text on the Right ?
« on: November 03, 2024, 10:02:24 AM »
HI Mike,
Where do you want to make them? Forms?, Browses? Anywhere? Do you want to be more specific? Do you want to do these in plain Net Talk or do you want to use css?
Ron
Where do you want to make them? Forms?, Browses? Anywhere? Do you want to be more specific? Do you want to do these in plain Net Talk or do you want to use css?
Ron
7
Web Server - Ask For Help / Re: How to change name of output PDF report?
« on: October 20, 2024, 06:43:33 AM »
Hi Jeff,
I use an Embed "RenameFile PROCEDURE in the Web Handler - after Parent call: ( this renames a file and sets the correct path for the chosen data set)
!MESSAGE('pname ' & p_name)
if p_name = 'upfilename' ! uploading schedule file
locpath = p_web.GSV('tProvRptDir') ! this is the provider file
! message('report dir ' & locpath)
locpath = clip(locpath) & '\INFILE\' ! this adds the Infile path
! message('upload path: ' & locpath)
RETURNVALUE = Parent.RenameFile(p_name,p_filename,locpath)
RETURN RETURNVALUE
END
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Second: This sends a file which is stored in a BLOB - get the blob, check it to see if it holds a file, if it does then extract it and send it
WebHandler - -SendFile PROCEDURE
Data section:
blobname StringTheory
sendstring StringTheory
CODE - Before Parent Call
!! working on generic code in the class to do this. This is for making a file from BLOB to send
Access:Blobfile.Open()
Access:Blobfile.UseFile()
blobname.SetValue(sub(p_FileName,len(clip(self.site.WebFolderPath)) + 2,255))
if blobname.sub(1,1) = '/' then blobname.setvalue(blobname.sub(2,255)).
blobname.replace('/','\')
BF:FileName = blobname.GetValue()
If Access:Blobfile.Fetch(BF:NameKey) = 0
sendstring.FromBlob(BF:Bin)
! allows the browser to cache this file.
! self.ForceNoCache = false
self.HeaderDetails.CacheControl = ''
self.FileDate = today() - 200
self.FileTime = 6000 !clock()
! or tell browser not to cache file
self.ForceNoCache = true
! end of cache settings
self.SendString(sendString,1,0,true)
loc:done = true
End
Access:Blobfile.Close()
If loc:done then return.
-------------------------------------------------------------------
Hopefully these two code snippets will help you get done what you need to get done.
Ron
I use an Embed "RenameFile PROCEDURE in the Web Handler - after Parent call: ( this renames a file and sets the correct path for the chosen data set)
!MESSAGE('pname ' & p_name)
if p_name = 'upfilename' ! uploading schedule file
locpath = p_web.GSV('tProvRptDir') ! this is the provider file
! message('report dir ' & locpath)
locpath = clip(locpath) & '\INFILE\' ! this adds the Infile path
! message('upload path: ' & locpath)
RETURNVALUE = Parent.RenameFile(p_name,p_filename,locpath)
RETURN RETURNVALUE
END
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Second: This sends a file which is stored in a BLOB - get the blob, check it to see if it holds a file, if it does then extract it and send it
WebHandler - -SendFile PROCEDURE
Data section:
blobname StringTheory
sendstring StringTheory
CODE - Before Parent Call
!! working on generic code in the class to do this. This is for making a file from BLOB to send
Access:Blobfile.Open()
Access:Blobfile.UseFile()
blobname.SetValue(sub(p_FileName,len(clip(self.site.WebFolderPath)) + 2,255))
if blobname.sub(1,1) = '/' then blobname.setvalue(blobname.sub(2,255)).
blobname.replace('/','\')
BF:FileName = blobname.GetValue()
If Access:Blobfile.Fetch(BF:NameKey) = 0
sendstring.FromBlob(BF:Bin)
! allows the browser to cache this file.
! self.ForceNoCache = false
self.HeaderDetails.CacheControl = ''
self.FileDate = today() - 200
self.FileTime = 6000 !clock()
! or tell browser not to cache file
self.ForceNoCache = true
! end of cache settings
self.SendString(sendString,1,0,true)
loc:done = true
End
Access:Blobfile.Close()
If loc:done then return.
-------------------------------------------------------------------
Hopefully these two code snippets will help you get done what you need to get done.
Ron
8
Web Server - Ask For Help / Re: checkboxes and radio buttons
« on: October 18, 2024, 03:29:23 AM »
Mike,
Maybe look at the page in developer mode and see what is happening in css for respective form. Getting overwritten by different settings in form? You may have to tweak the custom css - especially if you are playing with the built in nt identifiers and not your unique one.
Ron
Maybe look at the page in developer mode and see what is happening in css for respective form. Getting overwritten by different settings in form? You may have to tweak the custom css - especially if you are playing with the built in nt identifiers and not your unique one.
Ron
9
Web Server - Ask For Help / Re: Change background color of entire app
« on: October 15, 2024, 05:33:37 PM »
Jeff,
This CSS thing is for the young kids - not for old guys like me! Anyway, there are so many things going on here. The first question I have is did you get the css into your working custom.css file? You can look at the web page and put it in developers mode ( IE or Firefox. I have started using Stylizer 7 for some work as I learn css) - is your NEW CODE in the css? Is it being over written? if it is there, what is overwriting it?
That is supposed to be the power of css - one change and voila - the whole site is transformed.
Th --site--background is a built in variable I think.
This will give you a start. BTW, I hired a young kid to help me move around CSS - was well worth it. ( These kids will make a web site do all kinds of tricks - but they don't have a clue about the data behind it and what it represents or how to manage it. My 2 cents...
Ron
This CSS thing is for the young kids - not for old guys like me! Anyway, there are so many things going on here. The first question I have is did you get the css into your working custom.css file? You can look at the web page and put it in developers mode ( IE or Firefox. I have started using Stylizer 7 for some work as I learn css) - is your NEW CODE in the css? Is it being over written? if it is there, what is overwriting it?
That is supposed to be the power of css - one change and voila - the whole site is transformed.
Th --site--background is a built in variable I think.
This will give you a start. BTW, I hired a young kid to help me move around CSS - was well worth it. ( These kids will make a web site do all kinds of tricks - but they don't have a clue about the data behind it and what it represents or how to manage it. My 2 cents...
Ron
10
Web Server - Ask For Help / Re: How to call a "secondary" form after saving main update form?
« on: October 15, 2024, 03:31:43 PM »
Jeff,
I am not sure of a good way to call the MemForm Procedure now that I look at it.
I would consider putting a Button on the Browse that says "Print Report". It sounds like each record should have the Print report button so you don;t need to hide/unhide it. Make It an Action: Other . For th "On Click" action, use the second line the Procedure: In there put the NewStudyReport. No need for a MemForm now that I see what you are trying to do. Just the button. Make the NewStudyReport a Report procedure itself. It is the one that gets called with the Print Button. The Target Frame is '_blank' ( this opens the PDF report in a new tab). The NewStudyReport procedures has the Prototype/ Parameter (<NetWebServerWorker p_web>). You just need to make sure that the highlighted record p_web.GSV('Study_Id') is in focus so that you get the correct report. You can put code in the "Client-Side" tab.
For my Browse, I actually flag that the report was printed. so I send the Button click to the server, I have this in the SERVER CODE:
! for marking printed...
JSRV:GUID = p_web.GSV('JSRV:GUID')
if access:J_SRVREQ.fetch(JSRV:GUID_KEY) = Level:benign
p_web.SSV('JSRV:reqPRINTED',1)
access:J_SRVREQ.Update()
JSRV:reqPRINTED = 1
end
And I Refresh browse row DATA after server code runs.
Jeff, I think that this is really all you need.
Yell at me if it isn't going right for you and I can help you.
Ron
I am not sure of a good way to call the MemForm Procedure now that I look at it.
I would consider putting a Button on the Browse that says "Print Report". It sounds like each record should have the Print report button so you don;t need to hide/unhide it. Make It an Action: Other . For th "On Click" action, use the second line the Procedure: In there put the NewStudyReport. No need for a MemForm now that I see what you are trying to do. Just the button. Make the NewStudyReport a Report procedure itself. It is the one that gets called with the Print Button. The Target Frame is '_blank' ( this opens the PDF report in a new tab). The NewStudyReport procedures has the Prototype/ Parameter (<NetWebServerWorker p_web>). You just need to make sure that the highlighted record p_web.GSV('Study_Id') is in focus so that you get the correct report. You can put code in the "Client-Side" tab.
For my Browse, I actually flag that the report was printed. so I send the Button click to the server, I have this in the SERVER CODE:
! for marking printed...
JSRV:GUID = p_web.GSV('JSRV:GUID')
if access:J_SRVREQ.fetch(JSRV:GUID_KEY) = Level:benign
p_web.SSV('JSRV:reqPRINTED',1)
access:J_SRVREQ.Update()
JSRV:reqPRINTED = 1
end
And I Refresh browse row DATA after server code runs.
Jeff, I think that this is really all you need.
Yell at me if it isn't going right for you and I can help you.
Ron
11
Web Server - Ask For Help / Re: How to call a "secondary" form after saving main update form?
« on: October 14, 2024, 03:19:47 PM »
Jeff,
In the Form there is a Routine - Post Insert - which I use occasionally to do some secondary work. Maybe call a MemoryForm with the Print button. If you save the Study_ID in p_web.SSV('Study_Id', Study_ID) then you can add the net talk (<NetWebServerWorker p_web>) in Prototype and Parameters for your report. Then, in your report, in Init, Enter procedure setup embed or just after that one, thisStudyID = p_web.GSV('Study_Id'). thisStudyID is a local variable in your Report and it becomes the filter for the report. You can use the Report part only with maybe the method Alberto suggested. However, I find that it is easier to make a MemForm for specific things.
Ron
In the Form there is a Routine - Post Insert - which I use occasionally to do some secondary work. Maybe call a MemoryForm with the Print button. If you save the Study_ID in p_web.SSV('Study_Id', Study_ID) then you can add the net talk (<NetWebServerWorker p_web>) in Prototype and Parameters for your report. Then, in your report, in Init, Enter procedure setup embed or just after that one, thisStudyID = p_web.GSV('Study_Id'). thisStudyID is a local variable in your Report and it becomes the filter for the report. You can use the Report part only with maybe the method Alberto suggested. However, I find that it is easier to make a MemForm for specific things.
Ron
12
Web Server - Ask For Help / Re: Combining TakePic Action and Record Saving in a Single Button
« on: October 14, 2024, 12:01:31 PM »
Hi,
Sounds like you want to combine TakePic and Save REcord together - OR TakePic and UpdateRecord Together. I guess if you trust the person taking the picture to have it correct without seeing the display it might make sense. In standard Clarion I would attempt adding a postevent:Accepted to ?OK. I am not sure if there is a trick that Bruce or someone can suggest that would do this. Also depends on the form that the picture is on. It will want to validate all fields before saving. Maybe some Javascript?
Ron
Sounds like you want to combine TakePic and Save REcord together - OR TakePic and UpdateRecord Together. I guess if you trust the person taking the picture to have it correct without seeing the display it might make sense. In standard Clarion I would attempt adding a postevent:Accepted to ?OK. I am not sure if there is a trick that Bruce or someone can suggest that would do this. Also depends on the form that the picture is on. It will want to validate all fields before saving. Maybe some Javascript?
Ron
13
Web Server - Ask For Help / Re: Settings for making web procedures not visible/accessible
« on: September 29, 2024, 11:41:05 AM »
Johan,
Not sure what you are trying to accomplish. There is a global setting for user must be logged in as well as at the procedure level. eg You can't have to be logged in in order to Log In. Why don't you delete the procedures that are not used? I doubt if someone would guess the name of a procedure not being called and be able to call it. If you don't want to delete procedures and don't want them to be called why don't you give those procedures a Sec Level that WILL NEVER EXIST - maybe -101?
Ron
Not sure what you are trying to accomplish. There is a global setting for user must be logged in as well as at the procedure level. eg You can't have to be logged in in order to Log In. Why don't you delete the procedures that are not used? I doubt if someone would guess the name of a procedure not being called and be able to call it. If you don't want to delete procedures and don't want them to be called why don't you give those procedures a Sec Level that WILL NEVER EXIST - maybe -101?
Ron
14
Web Server - Ask For Help / Re: Sec:Level - Multiple Ranges?
« on: September 02, 2024, 12:39:39 PM »
Looking at the code, I imagine I could add this code to each procedure:
! Start of "Processed Code"
! [Priority 2800]
If ~ INRANGE(Sec:LEVEL,100,199) or ~ INRANGE(Sec:LEVEL,995,999)
Return -1
end
! Before checking p_Stage
Does this sound correct?
Ron
! Start of "Processed Code"
! [Priority 2800]
If ~ INRANGE(Sec:LEVEL,100,199) or ~ INRANGE(Sec:LEVEL,995,999)
Return -1
end
! Before checking p_Stage
Does this sound correct?
Ron
15
Web Server - Ask For Help / Sec:Level - Multiple Ranges?
« on: September 02, 2024, 06:19:22 AM »
Hi,
I want to have multiple security level ranges - one for user - e.g. sec:level = 100 -199 and ANOTHER for Administrators Sec:Level 995-999.
If possible then How?
Thanks,
ROn
I want to have multiple security level ranges - one for user - e.g. sec:level = 100 -199 and ANOTHER for Administrators Sec:Level 995-999.
If possible then How?
Thanks,
ROn