4D Insider I miss you, and my git workflow too.

105 views
Skip to first unread message

Jorge

unread,
Apr 7, 2013, 8:57:05 AM4/7/13
to 4d-...@googlegroups.com, 4D iNug Technical
Hi,

Now that there's no 4D Insider anymore, how can I map the names of the Triggers to their CC4D IDs, and the Form Methods, and the Form Objects' Methods?

Until now I was doing it by parsing the 4D Insider's .export reports, e.g.:

Trigger [TIENDAS] 4/4/13 (ID 13147 - 596 bytes)
Form Method [TIENDAS].Clock 4/4/13 (ID 3125 - 118 bytes)
Object Method [TIENDAS].Ficha2.asBajas 4/4/13 (ID 11474 - 210 bytes)

Has 4D devised another way to get that info in 4D v11, v12, etc. that I'm not aware of?

I'm going to pray to the 4D Gods every day because I need to solve this asap to make my git workflow work well again.

If anybody has found a solution *please* share.
If anybody has a clever idea *please* share.

I'd be willing to pay for it.

Cheers,
--
( Jorge )();

Julio Carneiro

unread,
Apr 7, 2013, 6:53:37 PM4/7/13
to 4d-...@googlegroups.com
not V11 or V12, but V13 has support for most of that, see http://doc.4d.com/4D-Language-Reference-13.2/Design-Object-Access.201-1076701.en.html
> --
> --
> You are subscribed to 4D-...@googlegroups.com
> To unsubscribe: mailto:4D-Tech-u...@googlegroups.com
> Visit: http://groups.google.com/group/4D-Tech
>
> To contact the moderators, please send an email to Administrat...@googlegroups.com
> ---
> You received this message because you are subscribed to the Google Groups "4D-Tech" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to 4d-tech+u...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>

Jorge

unread,
Apr 8, 2013, 10:44:25 AM4/8/13
to 4d-...@googlegroups.com
On 08/04/2013, at 00:53, Julio Carneiro wrote:

> not V11 or V12, but V13 has support for most of that, see http://doc.4d.com/4D-Language-Reference-13.2/Design-Object-Access.201-1076701.en.html

Yes, the "Design Objects Acess" theme, I've seen it... but how do you solve it in v11 and v12?

Thank you,

--
( Jorge )();

Jorge

unread,
Apr 8, 2013, 10:49:29 AM4/8/13
to 4d-...@googlegroups.com
s/Acess/Access/g
--
( Jorge )();

Julio Carneiro

unread,
Apr 8, 2013, 11:06:56 AM4/8/13
to 4d-...@googlegroups.com
API Pack gives you most of that functionality for Methods. There is a problem with Table Forms, as V11/V12 got away with a resource that I used to map Tables & FO4D resources (FI4D ==> TF4D).
The alternative for V11/V12 involves manual work to establish that association between TF4D (form list) resource and your Tables.

When dealing with 4D's internal resources you have to be aware that most of that stuff changes between versions, and event between point updates. So, I'd consider all that a hack!

hth
julio

Jorge

unread,
Apr 8, 2013, 11:18:22 AM4/8/13
to 4d-...@googlegroups.com
Yep, and that's why I miss 4D Insiders' .export reports so much.

Rob Laveaux

unread,
Apr 8, 2013, 11:18:45 AM4/8/13
to 4d-...@googlegroups.com

On 8 apr. 2013, at 17:06, Julio Carneiro <jjf...@gmail.com> wrote:

API Pack gives you most of that functionality for Methods. There is a problem with Table Forms, as V11/V12 got away with a resource that I used to map Tables & FO4D resources (FI4D ==> TF4D).

Hi Julio,

It didn't go away. It just works differently, due to internal changes in 4D. The example database has been updated long time ago.

See the project methods "4D_FindTF4DResource" and "4D_GetTF4DResourceIDs".

PS API Pack also has a cool Timer plugin area, which I don't hear anyone talk about :-)

HTH,

- Rob Laveaux

--------------------------------------------------------
Pluggers Software
Bleriotlaan 62
2497 BM  Den Haag
The Netherlands

Email: rob.l...@pluggers.nl
Website: http://www.pluggers.nl

--------------------------------------------------------

Jorge

unread,
Apr 8, 2013, 12:34:08 PM4/8/13
to 4d-...@googlegroups.com
On 08/04/2013, at 17:18, Rob Laveaux wrote:
> On 8 apr. 2013, at 17:06, Julio Carneiro <jjf...@gmail.com> wrote:
>
>> API Pack gives you most of that functionality for Methods. There is a problem with Table Forms, as V11/V12 got away with a resource that I used to map Tables & FO4D resources (FI4D ==> TF4D).
>
> Hi Julio,
>
> It didn't go away. It just works differently, due to internal changes in 4D. The example database has been updated long time ago.
>
> See the project methods "4D_FindTF4DResource" and "4D_GetTF4DResourceIDs".
>
> PS API Pack also has a cool Timer plugin area, which I don't hear anyone talk about :-)
>
> HTH,


Hi Rob,

Firstly, thank you very much for giving us the wonderful API Pack for free, it's über-awesome!

I'm using it just right now to dump the rsrcs of my structure to .hex text files but API Get Resource Type List() is giving me some strange rsrc types which are *not* 4 bytes long, such as "l" and "f" and "m" and "x", ISTM that the conversion from the longint rsrc type to str is somehow broken, is this a bug in API Pack?

Needless to say, API Get Resource ID List() returns empty arrays for these...

Jorge

unread,
Apr 8, 2013, 12:49:13 PM4/8/13
to 4d-...@googlegroups.com
I mean, this smells very very much like if there were 0x00s in the types and you were using C type strings, but I may be mistaken.
--
( Jorge )();

Rob Laveaux

unread,
Apr 8, 2013, 2:59:25 PM4/8/13
to 4d-...@googlegroups.com

On 8 apr. 2013, at 18:34, Jorge <jo...@jorgechamorro.com> wrote:

I'm using it just right now to dump the rsrcs of my structure to .hex text files but API Get Resource Type List() is giving me some strange rsrc types which are *not* 4 bytes long, such as "l" and "f" and "m" and "x", ISTM that the conversion from the longint rsrc type to str is somehow broken, is this a bug in API Pack?

Maybe :-)

Resource types are 32-bit long integers which can be transferred to a 4 character string for easier readability.
In this case, the remaining characters are NULL bytes, which indicate the end of a string in both C and 4D.

So yes, the resource type as a string can be 1 to 4 characters.

Needless to say, API Get Resource ID List() returns empty arrays for these...

The true issue is likely here, where the plugin needs to convert a 4 character string back to a longint value.
Apparently something goes wrong here. I'll have to investigate that further.

Kind regards,

Jorge

unread,
Apr 8, 2013, 3:19:15 PM4/8/13
to 4d-...@googlegroups.com
On 08/04/2013, at 20:59, Rob Laveaux wrote:
>
> On 8 apr. 2013, at 18:34, Jorge <jo...@jorgechamorro.com> wrote:
>
>> I'm using it just right now to dump the rsrcs of my structure to .hex text files but API Get Resource Type List() is giving me some strange rsrc types which are *not* 4 bytes long, such as "l" and "f" and "m" and "x", ISTM that the conversion from the longint rsrc type to str is somehow broken, is this a bug in API Pack?
>
> Maybe :-)
>
> Resource types are 32-bit long integers which can be transferred to a 4 character string for easier readability.
> In this case, the remaining characters are NULL bytes, which indicate the end of a string in both C and 4D.
>
> So yes, the resource type as a string can be 1 to 4 characters.


I forgot to say before that API Get Resource Type List() is giving me not one but several "l" (or "m" of "f" or "x", I'm not sure) types, does that mean that there's more than one type that begins with "l\x00" ? Say "l\x00pq" and "l\x0rs", for example ?


>> Needless to say, API Get Resource ID List() returns empty arrays for these...
>
> The true issue is likely here, where the plugin needs to convert a 4 character string back to a longint value.
> Apparently something goes wrong here. I'll have to investigate that further.


If I were you, as I'm quite lazy, I would have used the raw longints in the rsrcs types' APIs :-)

Thank you again: your API Pack plugin is a jewel.
Reply all
Reply to author
Forward
0 new messages