X-CGP-ClamAV-Result: CLEAN X-VirusScanner: Niversoft's CGPClamav Helper v1.22.2a (ClamAV engine v0.102.2) From: "Walter Lo Nigro" Received: from smtpcmd03117.aruba.it ([62.149.158.117] verified) by post.selbstdenker.com (CommuniGate Pro SMTP 6.3.3) with ESMTP id 26571689 for webobjects-dev@wocommunity.org; Thu, 07 Oct 2021 19:12:39 +0200 Received-SPF: none receiver=post.selbstdenker.com; client-ip=62.149.158.117; envelope-from=walter@lonigro.net Received: from mbp-di-walter.homenet.telecomitalia.it ([82.63.24.20]) by Aruba Outgoing Smtp with ESMTPA id YWwMmGxU3Dee6YWwMmcWs3; Thu, 07 Oct 2021 19:12:19 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=aruba.it; s=a1; t=1633626739; bh=/yx1p2Qoewa0XYAt4DUMuOWgf3RDahhpLIv8JYznKb8=; h=From:Mime-Version:Content-Type:Subject:Date:To; b=ndqK8rQ4aaAawPAHvSxXzNaXfeRWrgikPodqbzYN0tWdoL+SxtR3Oa1XLR1ASxmMO +5gonDig9Ogbz4g9FAImel1rxrbqC5gpv7+7cgm+Afo8XEApiXqwUh8hTSGBy3+C1p DGMjU2n1d87skOTCP1BHFSHHHlikOGyWIQchAKyfmf1mZehLbHLCCRnIoD5wfWP63Z 8lBMWqiR99C1eni85UJi7RA8lRocaI/PV3OOLkXGusPVSD3UxsmEN9wRwe5YjSi76j LNe6o0FVuum9/kpwli/joeeOoA/pIMZcR6/bcyq+GSDvZIV3y/Sp9uXoPkiROkZHQi M9jSY2e1wLNCw== Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.7\)) Content-Type: multipart/signed; boundary="Apple-Mail=_B4FFC0A3-163E-4191-97D7-64975F94B826"; protocol="application/pkcs7-signature"; micalg=sha1 X-Priority: 1 Subject: Re: [WO-DEV] Re: Custom WOComponent "not seeing" D2W entity attributes in Inspect page Date: Thu, 7 Oct 2021 19:12:17 +0200 References: To: WebObjects & WOnder Development In-Reply-To: Message-Id: <8F7CECEC-2B18-49A2-8214-213CC41E9B11@lonigro.net> X-Mailer: Apple Mail (2.3445.9.7) X-CMAE-Envelope: MS4wfANXksWkVFVfn5CbYnJbwmSde2fQ6KGF2ACP2ibN3exuIPQNjWYGCjqh6Bg7JZhePzIlYgSqAA6cddqL+XyfIM7idOKuhdQ1ecCui0R8jxnpC1v1Upke UoPN10pOghVJT4zJAeaxKTXdeYLpQgiO5TN/A1w1mWA3w6mLpbj6qCQizW9Qjm/65GuyxSw/B23AiVkjE6a7vajdZa55O7/HfXk= --Apple-Mail=_B4FFC0A3-163E-4191-97D7-64975F94B826 Content-Type: multipart/alternative; boundary="Apple-Mail=_6BE56284-DF27-4728-8081-8247DFA93C5F" --Apple-Mail=_6BE56284-DF27-4728-8081-8247DFA93C5F Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Thank you Tyler, that=E2=80=99s interesting, but I=E2=80=99m not sure it = would solve my problem=E2=80=A6 I=E2=80=99ll try to be more specific: I have several related entities, of which the following are relevant: = Registro, Docente, Classe, Lezione, Annoaccademico Classe has a to-one relationship with Docente and a to-one relationship = with Annoaccademico Fetch specification: =E2=80=9CFetchClassiDocenteInAnnoAccademico=E2=80=9D = with qualifier 'docente =3D $doc and annoAccademico =3D $annoAcc=E2=80=99 Lezione has a to-many relationship with Classe named =E2=80=98classi=E2=80= =99 and a to-one relationship with Docente Fetch specification: =E2=80=9CFetchLezioniDocenteInAnnoAccademico=E2=80=9D= with qualifier 'classi.annoAccademico =3D $annoAcc and docente =3D = $doc' Registro has two to-one relationships: > Annoaccademico and > Docente Now, I have created a WOComponent which extends AjaxGrid to be used in = an InspectRegistro pageConfiguration and should be able to use those = fetch specs, but=E2=80=A6 Where is the correct place to set/bind the two variables $doc (should be = Registro.docente()) and $annoAcc (should be Registro.annoAccademico()) = ??? Thanks again Walter *** Walter Lo Nigro, Trieste, Italy - http://www.wln.it *** *** Choral Activities, "G. Tartini" Conservatory, Trieste *** *** Freelance conductor, RiscOS/ROOL registered developer *** > Il giorno 07 ott 2021, alle ore 18:17, Jesse Tayler = ha scritto: >=20 > You can read the whole model, not sure where your query strings are = there, and I might just put those into your D2W rules myself. >=20 > You can write rules that reach a session or session.user and write = =E2=80=9C(session.user.role =3D '%@' && active =3D =E2=80=98true')=E2=80=9D= or something using keys that are dynamically filled at runtime -- so = your logic can include both query args and format in rules. >=20 > I have components that read an array of args from D2W and then a = format string and the query just comes out and fills the list. I can = adjust my D2W rules and see the sort orderings or batch settings and = adjust the qualifier all in rules >=20 > Maybe that helps >=20 >> On Oct 7, 2021, at 11:23 AM, Walter Lo Nigro = > = wrote: >>=20 >> Dear Listers, >>=20 >> Another (probably stupid) question for you=E2=80=A6 >>=20 >> In my D2W Wonder app I have an entity =E2=80=98Registro=E2=80=99 and = set the InspectRegistro page to display a userPresentableDescription = attribute. I have created a custom WOComponent called = =E2=80=98RegistroDocente=E2=80=99 to display this attribute, basically = extending AjaxGrid. I have obviusly set the relevant rule in = d2w.d2wmodel and so far so good but... >>=20 >> I have also defined some fetch specifications in my EOModeler which = use some $variables, and here=E2=80=99s the problem: I cannot find a way = to get the RegistroDocente component to get hold of attributes in entity = Registro, and I need them to get the fetch specifications working. >>=20 >> Am I supposed to bind these attributes/variables somewhere? Is there = a specific EOEditingContext I must use for this? I am stunned :-/ >>=20 >> Thank you for helping >> Walter >>=20 >> *** Walter Lo Nigro, Trieste, Italy - http://www.wln.it = *** >> *** Choral Activities, "G. Tartini" Conservatory, Trieste *** >> *** Freelance conductor, RiscOS/ROOL registered developer *** >>=20 >=20 --Apple-Mail=_6BE56284-DF27-4728-8081-8247DFA93C5F Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 Thank= you Tyler, that=E2=80=99s interesting, but I=E2=80=99m not sure it = would solve my problem=E2=80=A6 I=E2=80=99ll try to be more = specific:

I have = several related entities, of which the following are relevant: Registro, = Docente, Classe, Lezione, Annoaccademico

Classe has a to-one relationship with = Docente and a to-one relationship with Annoaccademico
Fetch specification: =E2=80=9CFetchClassiDocenteInAnnoAccademic= o=E2=80=9D with qualifier 'docente =3D $doc and annoAccademico =3D = $annoAcc=E2=80=99

Lezione has a to-many relationship with Classe named = =E2=80=98classi=E2=80=99 and a to-one relationship with = Docente
Fetch specification: = =E2=80=9CFetchLezioniDocenteInAnnoAccademico=E2=80=9D with qualifier = 'classi.annoAccademico =3D $annoAcc and docente =3D $doc'

Registro has two to-one = relationships: > Annoaccademico and > Docente

Now, I have created a = WOComponent which extends AjaxGrid to be used in an InspectRegistro = pageConfiguration and should be able to use those fetch specs, = but=E2=80=A6

Where is the correct place to set/bind the two variables $doc = (should be Registro.docente()) and $annoAcc (should be = Registro.annoAccademico()) ???

Thanks again
Walter


***  Walter Lo = Nigro, Trieste, Italy  -  http://www.wln.it  ***
***  Choral Activities, "G. Tartini" = Conservatory, Trieste  ***
***  Freelance = conductor, RiscOS/ROOL registered developer  ***

Il giorno 07 ott 2021, alle ore 18:17, Jesse Tayler <webobjects-dev@wocommunity.org> ha scritto:

You can read the whole = model, not sure where your query strings are there, and I might just put = those into your D2W rules myself.

You can write rules that reach a session or session.user and = write =E2=80=9C(session.user.role =3D '%@' && active =3D = =E2=80=98true')=E2=80=9D or something using keys that are dynamically = filled at runtime -- so your logic can include both query args and = format in rules.

I have components that read an array of args from D2W and = then a format string and the query just comes out and fills the list. I = can adjust my D2W rules and see the sort orderings or batch settings and = adjust the qualifier all in rules

Maybe that helps

On Oct 7, 2021, at 11:23 AM, Walter Lo Nigro <webobjects-dev@wocommunity.org> wrote:

Dear Listers,

Another (probably = stupid) question for you=E2=80=A6

In my D2W Wonder app I have an entity = =E2=80=98Registro=E2=80=99 and set the InspectRegistro page to display a = userPresentableDescription attribute. I have created a custom = WOComponent called =E2=80=98RegistroDocente=E2=80=99 to display this = attribute, basically extending AjaxGrid. I have obviusly set the = relevant rule in d2w.d2wmodel and so far so good but...

I have also defined some = fetch specifications in my EOModeler which use some $variables, and = here=E2=80=99s the problem: I cannot find a way to get the = RegistroDocente component to get hold of attributes in entity Registro, = and I need them to get the fetch specifications working.

Am I supposed to bind = these attributes/variables somewhere? Is there a specific = EOEditingContext I must use for this? I am stunned :-/

Thank you for = helping
Walter

***  Walter Lo Nigro, Trieste, Italy =  -  http://www.wln.it  ***
*** =  Choral Activities, "G. Tartini" Conservatory, Trieste =  ***
***  Freelance conductor, = RiscOS/ROOL registered developer  ***



= --Apple-Mail=_6BE56284-DF27-4728-8081-8247DFA93C5F-- --Apple-Mail=_B4FFC0A3-163E-4191-97D7-64975F94B826 Content-Disposition: attachment; filename=smime.p7s Content-Type: application/pkcs7-signature; name=smime.p7s Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIINejCCBnUw ggTdoAMCAQICDCjDmB0AAAAAVx3Q5zANBgkqhkiG9w0BAQsFADBcMQswCQYDVQQGEwJTSTEcMBoG A1UEChMTUmVwdWJsaWthIFNsb3ZlbmlqYTEXMBUGA1UEYRMOVkFUU0ktMTc2NTk5NTcxFjAUBgNV BAMTDVNJLVRSVVNUIFJvb3QwHhcNMTYwNTI0MTE0OTQxWhcNMzYwNDIzMjIwMDAwWjBaMQswCQYD VQQGEwJTSTEcMBoGA1UEChMTUmVwdWJsaWthIFNsb3ZlbmlqYTEXMBUGA1UEYRMOVkFUU0ktMTc2 NTk5NTcxFDASBgNVBAMTC1NJR0VOLUNBIEcyMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKC AYEA0SZdHanO5wIOwYuVhkr8mJUriatTf9yKhyqAOCStogeOhjAUnP2pMNhDDooA9fVHHvYzZyot 3GaQzEIJU4tzJQF96b/MGo5jATH0Nj+SA9hd1ZHGVSlpT1AJ1o86/t0lt53hqjDfv944sVz7sgeO QRoVtZI6meYvAyMKaULhd3VGAJMhEnRgsLamAFp9XdbwE83UbO35+bijQhqmzHGGi+4YQuWdI/oZ 3yrmSkbc0h/cTNO/sVyiKBfIL2BH1gf5ZHCHVRFAQDUmvE3n7oVaApU2qSx/842QVbR7eMQTG3Pu oKPCg/6eyflffrh90AoMzN0XSCIJdd0yVLTFgAcs5pKu+FBTNArDk5Vb6X1M6hFFGGYtD2LYOv3w 84NZNnbajhHkKJ0FQbT6LdGz+uNw9Mw0v5JNPleM3kI4YVWsAQL8E7DlzsfTEc8rfOZp5TDDeFXa pNryXdgvrgAwZJ5RV7+QjNgprQGzlx+DnktKiAk6qlsPLoek/g1ZeHqJpsmPAgMBAAGjggI3MIIC MzASBgNVHRMBAf8ECDAGAQH/AgEAMA4GA1UdDwEB/wQEAwIBBjA6BgNVHSAEMzAxMC8GBFUdIAAw JzAlBggrBgEFBQcCARYZaHR0cDovL3d3dy5jYS5nb3Yuc2kvY3BzLzBpBggrBgEFBQcBAQRdMFsw NgYIKwYBBQUHMAKGKmh0dHA6Ly93d3cuY2EuZ292LnNpL2NydC9zaS10cnVzdC1yb290LmNydDAh BggrBgEFBQcwAYYVaHR0cDovL29jc3AuY2EuZ292LnNpMBEGA1UdDgQKBAhMJSeMqC1ynjCCATwG A1UdHwSCATMwggEvMIG3oIG0oIGxhipodHRwOi8vd3d3LmNhLmdvdi5zaS9jcmwvc2ktdHJ1c3Qt cm9vdC5jcmyGgYJsZGFwOi8veDUwMC5nb3Yuc2kvY249U0ktVFJVU1QlMjBSb290LG9yZ2FuaXph dGlvbklkZW50aWZpZXI9VkFUU0ktMTc2NTk5NTcsbz1SZXB1Ymxpa2ElMjBTbG92ZW5pamEsYz1T ST9jZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0MHOgcaBvpG0wazELMAkGA1UEBhMCU0kxHDAaBgNV BAoTE1JlcHVibGlrYSBTbG92ZW5pamExFzAVBgNVBGETDlZBVFNJLTE3NjU5OTU3MRYwFAYDVQQD Ew1TSS1UUlVTVCBSb290MQ0wCwYDVQQDEwRDUkwxMBMGA1UdIwQMMAqACEyjw2heCAJjMA0GCSqG SIb3DQEBCwUAA4IBgQA1YFckbeuNeukctaDcaoov8yM6yhK9uCD5CO7yZnMxif5UZuryGmQXcXrn mw9SiAkfGEM5yNMUYkGf3M9qCDSXVagql5TnXUWb7n1iHGV6Zgz5YoPOvoLnmLSSES6voJOBY8/L XT6OhoWDe2/cENeRWAyI4D8xA56v2ECfmSbPWj6LbJCh7ysmg4PDYm0u6nYi12k6KFhQmkleIfiT 7UrW8PkezGi5x78qfLKoZeL4Jzzb90y8D5lq9Y1PhD9YMeWsRJCqSWpnNczIE1sPxUuFc68UirA2 TP+xOnAmRwls4j1rPAt7i6sntrQQQQoI5sjWOVwvK4/OUW6ZeStUiJYPY3rRH1DaGllz9EvxoALY AeREPSF8Eo3/Q/w8arzpnuW4Su6Npd6/9fzrz5qGLbYEIQZqSGEH82nAfeMkxwwiWa1qhXPg1uAT oP3ciy7MpHDRJ2FgpYm1FolPyE5VvwHCpLqLzEFTAB2LuLuS73hFhMppG2k8UZh8d/7MJ93mYtow ggb9MIIFZaADAgECAgxUD5pNAAAAAFckw8UwDQYJKoZIhvcNAQELBQAwWjELMAkGA1UEBhMCU0kx HDAaBgNVBAoTE1JlcHVibGlrYSBTbG92ZW5pamExFzAVBgNVBGETDlZBVFNJLTE3NjU5OTU3MRQw EgYDVQQDEwtTSUdFTi1DQSBHMjAeFw0yMDA0MDkxMzM4MjZaFw0yNTA0MDkxNDA4MjZaMIGNMQsw CQYDVQQGEwJTSTESMBAGA1UECBMJU2xvdmVuaWphMRQwEgYDVQQLEwtpbmRpdmlkdWFsczFUMA8G A1UEBBMITG8gTmlncm8wEAYDVQQqEwlHdWFsdGllcm8wFAYDVQQFEw0yNDgxMDQyMjEyMDI4MBkG A1UEAxMSR3VhbHRpZXJvIExvIE5pZ3JvMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA voHTc9o3n0chIT4uLx29BdkUbFMivCbAHnlJrYjbbckvrEpUCslBT2FsRSTln5ObwwAZbMN8zhBa 8wUhhInNbziPx83EHhsZWn4ww/OOII3BlTNNuhHQIlB40iXOjNEBehHX3t2xq9q1nOHIoztgm/zV GRKv8D4dKc3I/CQfeRlzKnIpdjXN9fbRw4WoM2i9JUwX3j2Gy3d6UA7Qp8oZZWlK0nihELDMPhT1 Dow9cFbLwJKBFbf8IQuidZFCtvMlPkKPhr/SoFXshlAb5/eeTW1niGS/Ki/KemSsz4jQjFbbBQZ0 B0IsRbZGuX4kPxYjRsxmRR8tt5LBxN5XbCb/kwIDAQABo4IDDTCCAwkwDgYDVR0PAQH/BAQDAgXg MEwGA1UdIARFMEMwNgYLKwYBBAGvWQICAwUwJzAlBggrBgEFBQcCARYZaHR0cDovL3d3dy5jYS5n b3Yuc2kvY3BzLzAJBgcEAIvsQAEAMIGlBggrBgEFBQcBAwSBmDCBlTAIBgYEAI5GAQEwdAYGBACO RgEFMGowMxYtaHR0cHM6Ly93d3cuY2EuZ292LnNpL2Nwcy9zaWdlbmNhMl9wZHNfZW4ucGRmEwJl bjAzFi1odHRwczovL3d3dy5jYS5nb3Yuc2kvY3BzL3NpZ2VuY2EyX3Bkc19zbC5wZGYTAnNsMBMG BgQAjkYBBjAJBgcEAI5GAQYBMHEGCCsGAQUFBwEBBGUwYzA8BggrBgEFBQcwAoYwaHR0cDovL3d3 dy5zaWdlbi1jYS5zaS9jcnQvc2lnZW4tY2EtZzItY2VydHMucDdjMCMGCCsGAQUFBzABhhdodHRw Oi8vb2NzcC5zaWdlbi1jYS5zaTAdBgNVHREEFjAUgRJ3YWx0ZXJAbG9uaWdyby5uZXQwggE6BgNV HR8EggExMIIBLTCBtaCBsqCBr4YqaHR0cDovL3d3dy5zaWdlbi1jYS5zaS9jcmwvc2lnZW4tY2Et ZzIuY3JshoGAbGRhcDovL3g1MDAuZ292LnNpL2NuPVNJR0VOLUNBJTIwRzIsb3JnYW5pemF0aW9u SWRlbnRpZmllcj1WQVRTSS0xNzY1OTk1NyxvPVJlcHVibGlrYSUyMFNsb3ZlbmlqYSxjPVNJP2Nl cnRpZmljYXRlUmV2b2NhdGlvbkxpc3Qwc6BxoG+kbTBrMQswCQYDVQQGEwJTSTEcMBoGA1UEChMT UmVwdWJsaWthIFNsb3ZlbmlqYTEXMBUGA1UEYRMOVkFUU0ktMTc2NTk5NTcxFDASBgNVBAMTC1NJ R0VOLUNBIEcyMQ8wDQYDVQQDEwZDUkwzMDEwEwYDVR0jBAwwCoAITCUnjKgtcp4wEQYDVR0OBAoE CEkPtRx7DAYNMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggGBAJ5cFhukIAuqrb88WxhMl6YL +AYrT7T6UGB36LTe8y4yU/a1bGRwjQ0i+1v5fra/MGvINF7uhWykvKVzniHhgHlg1/ClsW2ok/wH xhA6Wxh8PRgMq0HDWGgInLwKu2BJQGZP+R08dclWqAmIgZLHXvcDqTTgpENJaVBjuXAMEv9cCL85 gQ1iudyENkgTG/kfqJrDO5W6kE54nmxUxSLyZ1mPs7slCYyC1EMPGuGec+kbrMikY2bpVRfeiwAD 9+uqDcyDyKo56E3E65SGD5aIVsr821+EcxC+ZlL1yv+8hDb4ydw1VLB7NNQ/OUZzkji5jbKQ3hp7 RRIzNpMMetAzIRmaePN1LXnGoRolHFaUYDcRHbP8Q1sEjWqR5dy6KvukcKpdW/Bz3cGM3+BNz9NH ZR8wP90O0tRQ4EebaZF0g4udgy9oW1R4JbuzAGFOfn9HCSEtS97kTQTKOcRn3KDLrOfqqWIw12UH k4RNoZnnAp8vFML9obpYDxItyHpCOybA4TGCAuowggLmAgEBMGowWjELMAkGA1UEBhMCU0kxHDAa BgNVBAoTE1JlcHVibGlrYSBTbG92ZW5pamExFzAVBgNVBGETDlZBVFNJLTE3NjU5OTU3MRQwEgYD VQQDEwtTSUdFTi1DQSBHMgIMVA+aTQAAAABXJMPFMAkGBSsOAwIaBQCgggFVMBgGCSqGSIb3DQEJ AzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTIxMTAwNzE3MTIxOFowIwYJKoZIhvcNAQkE MRYEFGC9SG8J8rxTm7Bat77i+a7dYLrqMHkGCSsGAQQBgjcQBDFsMGowWjELMAkGA1UEBhMCU0kx HDAaBgNVBAoTE1JlcHVibGlrYSBTbG92ZW5pamExFzAVBgNVBGETDlZBVFNJLTE3NjU5OTU3MRQw EgYDVQQDEwtTSUdFTi1DQSBHMgIMVA+aTQAAAABXJMPFMHsGCyqGSIb3DQEJEAILMWygajBaMQsw CQYDVQQGEwJTSTEcMBoGA1UEChMTUmVwdWJsaWthIFNsb3ZlbmlqYTEXMBUGA1UEYRMOVkFUU0kt MTc2NTk5NTcxFDASBgNVBAMTC1NJR0VOLUNBIEcyAgxUD5pNAAAAAFckw8UwDQYJKoZIhvcNAQEB BQAEggEAoq5Z66g5mx+0PN/etjFYuBtjFpeGSQ3GRLzrkJuB3JfEtBHm7hIsLZZH6wav9gFBt3rx QjlaNsNm70b26SFXpRh0WBQQIelyQZMbqEPYyx2a3h8xRwT59IbKRHfQPl9MXOX62dmElG+oUpx2 PChHJZZskPnHUBIYakbOCfVa5Xwm65+8AoQgvaGEDVUiYyV/CLxDvHJY809QUwDPDBenmMCau/K/ oUYxrZhNvJxysK3U9cylRnSgPesGYaEbjTbdjWRTFDUhX3ianguWKmrcDjK1W6EupsTwwBsKjxDi FiiizXogs7aDTOGhWuX4qb67S/tiGD2CQKIl/6vjAjBkOQAAAAAAAA== --Apple-Mail=_B4FFC0A3-163E-4191-97D7-64975F94B826--