Simple bug in IW15.1.4, but very annoying.
OnAsyncClick Event:
IWGrid1.visible: = not IWGrid1.visible;
... and the position of the Grid is moving!
(The position is correct for the OnClick event.)
I am new to IntraWeb and am trying it out for the first time. However when I drop a breakpoint on the code in the Form unit it does not seem to trigger correctly. Does Intraweb support the Delphi debugger? If so does anyone have any suggestions that I may try to get that working.
Has anyone else experienced a strange and frustrating issue with HttpSys / CGIRunner?
The setup (on Windows Server 2008 R2) is, in simple terms, the following:
ServerA calls CGIRunnerA when requested to produce a client/user's report.
ServerB calls CGIRunnerB when requested to produce a client/user's report.
Different exes. Different folders. Both running as services on port 80 using HttpSys.
Both run happily for days depending on the load. Then suddenly they both stop calling the respective CGIRunner exe. As far as I can tell it isn't a memory or CPU issue. If I watch Task Manger, I seems the exe isn't called / loaded. Stopping / starting just one of the servers fixes the issue for both.
The issue is most notable when the ServerB / CGIRunnerB combination is "live". The reason being that, even though ServerB may only have 20+ users, the reports being produced can be very big. Initially it seemed like an issue with ServerB but then by chance just as I got a client email about it not producing a report, I got a notification email about the same issue on ServerA. Stop / start only ServerB, and ServerA also came right! It is consistent. Nothing else on the Servers stop functioning. They remain fully responsive, except for this one function!
And yes... I am creating and freeing the CGIRunner (similar to the demos). I have tried with LogCommand enabled - no errors. Can't reproduce on my test environment - even with four different browsers open, simultaneously producing big reports. So not sure where to go from here.
I downloaded the latest interim version to test against my application and I am happy to report that most of my application is working.
The earlier issue I reported about memory EAccessErrors was caused because apparently in IW 15.0.24->15.1 the destruction of objects (or at least child forms) of a form has changed! That is, I have a form that contains a couple of children IWAppForms and I was saving their some of their variables in my main form's deconstructor because usually they aren't destroyed until AFTER my destructor has run. Any how, once I noticed this, I was able to fix my issue.
The problem I haven't figured out that is causing me issues is RegisteredCallBack()s. I have a class I wrote that encapsulates a bootstrap 4 progress stepper class. Since it is a non-visual class, I use a TDataModule. When I registered my callback, I use the function below:
Added placeholders and they mostly work, but if I touch an IWEdit control through an async call such as enabling, disabling, or setting the text the placeholder then disappears. If I update the control via a synchronous call the placeholder reappears and works until another async call updates the control. This occurs with or without templates.
Good morning,
I found two possible bootstrap errors in version 3.4.1.
I am using intraweb 15.1.4 and the bootstrap version 3.4.1 (IWBSLayoutMgr).
1)
I put an iwbsregion and an iwbstext with some text and set the visible property of the latter to false. I have a button where I call
IWBSText1.show to show it. The region is shown and also iwbstext but the text present in iwbstext is not shown. If I inspect with firebug the text is present is the css property visibility: hidden is always present although it called show on iwbstext. (i always call AsyncRefreshControl after show)
2)
I have an IWBSRegion and an iwbsinputform inside it.
I set the Visibility-xs and visibility-sm to bsgvHidden properties on the Object inspector. When I am in the xs or sm condition the iwbsinputform component is not hidden.
I enclose an example project so you can check for possible errors
P.S. (Also Css property and BSFormType are not decoded in html class when render)
P.S (Also IWBSRegion seems has the same problem when i call show method)
I am trying to use the IWError.html template to customize the error page. What are all possible variables {% ..%} to use? I am having difficulty customizing the reset link and displaying error details.
IW is trying to clear an uncreated object, Add Lines commented below //OPH20190826 Prevent Bug
unit IWCallBackFunc;
//OPH20190826 Prevent Bug
interface
...
implementation
...
procedure TIWCallBacks.Invoke(ACallbackRec: TIWCallbackRec);
var
LResult: string;
LHandled: Boolean;
LForm: TIWForm;
LSession: TIWApplicationAccess;
begin
LSession := TIWApplicationAccess(FSession);
if not Assigned(LSession) or not Assigned(LSession.ActiveForm) then begin
Exit;
end;
LForm := TIWForm(LSession.ActiveForm);
try
//Pass a copy of all Request params to the Callback.
if not Assigned(FEventParams) then begin
FEventParams := TIWStringList.Create;
end;
FEventParams.AddStrings(LForm.Params, False);
if Assigned(ACallbackRec.Method) then begin
ACallbackRec.Method(FEventParams);
end else if Assigned(ACallbackRec.Proc) then begin
LResult := '';
LHandled := False;
ACallbackRec.Proc(FEventParams, LResult, LHandled);
if LHandled then begin // user code handles the response
LSession.CallBackResponse.SendResponse := False;
Exit;
end;
if LResult <> '' then begin
// Write result to response as is
LSession.CallBackResponse.AddRawText(LResult);
end;
end;
if LForm.SendAJAXNotification then begin
LSession.CallBackResponse.AddJavaScriptToExecute(LForm.GetIWAJAXNotificationJSCode);
end;
finally
if Assigned(FEventParams) then //OPH20190826 Prevent Bug
FEventParams.Clear;
end;
end;
using delphi 10 seattle,
my email is setup like so:
Code:
dmEmail.emMessage.ContentType := 'text/calendar;method=REQUEST';
with tIDText.Create(dmEMail.emMessage.Messageparts) do
begin
ContentType := 'text/calendar;method=REQUEST';
// parentPart := 0;
Body.Text := eventText.Text;
end;
with TIdAttachmentFile.Create(dmEmail.emMessage.MessageParts, fName) do
begin
ContentDisposition := 'attachment';
ContentType := 'text/calendar;method=REQUEST';
ExtraHeaders.Values['Content-ID'] := ExtractFileName(fName);
ContentID := ExtractFileName(fName);
Filename := ExtractFilename(fName);
// parentPart := 1;
end
where fName is a .ics file that I am attempting to send.
currently, the contents of the ics file is:
Code:
BEGIN:VCALENDAR
VERSION:2.0
METHOD:REQUEST
BEGIN:VEVENT
ORGANIZER;CN=Connie M.:MAILTO:[real code has a valid email address here]
DTSTART:20190827T220000Z
DTEND:20190827T230000Z
TRANSP:OPAQUE
SEQUENCE:0
UID:185
DTSTAMP:20190827T071800Z
DESCRIPTION:3 pm my time
SUMMARY:Event on 27th
PRIORITY:2
BEGIN:VALARM
TRIGGER:-PT15M
ACTION:DISPLAY
DESCRIPTION:Reminder
END:VALARM
END:VEVENT
END:VCALENDAR
my mail.txt (saving the message to file) is this:
Code:
Subject: Event on 27th
To: [real code has a valid email address here, which is different that the organizer address above]
Content-Type: text/calendar; method=REQUEST; charset=us-ascii; boundary="AZF7QdS9INFRk=_YwrBAXh6TL7aANRhj0D"
MIME-Version: 1.0
Date: Tue, 27 Aug 2019 07:18:42 -0700
BEGIN:VCALENDAR
VERSION:2.0
METHOD:REQUEST
BEGIN:VEVENT
ORGANIZER;CN=3DConnie M.:MAILTO:[weird that organizer name changed to start with 3D, but otherwise, same valie email address]
DTSTART:20190827T220000Z
DTEND:20190827T230000Z
TRANSP:OPAQUE
SEQUENCE:0
UID:185
DTSTAMP:20190827T071800Z
DESCRIPTION:3 pm my time
SUMMARY:Event on 27th
PRIORITY:2
BEGIN:VALARM
TRIGGER:-PT15M
ACTION:DISPLAY
DESCRIPTION:Reminder
END:VALARM
END:VEVENT
END:VCALENDAR
raised exception class EIdSMTPReplyError with message 'STOREDRV.submission.excetption : invalid recipentsException;
failed to process message due to a permanent exception with mesage. Amessage can't be sent because it contains no recipients. InvalidRecipientsException a message can't be sent because it contains no recipients.
since I DO have a recipient, I'm not sure why I am getting this message.
what I am trying to do :
send an email with an event invite, with the 'accept/decline' stuff in the email.
so far, the most I have accomplished is only getting the ics file as an attachment.
it is VERY possible the ics file is incorrect (this is my first time attempting this)
any ideas what I am missing?