bill,
thank you for your support.
using syswow64/regsvr32 does not give any error message, confirms that the dll 
is registered, but does not resolve my problem. the error message i receive 
when trying to add the reference to J DLL Server in VS remains unchanged.
best
herbert

Sent from my iPhone

> On 14 Apr 2017, at 00:36, bill lam <[email protected]> wrote:
> 
> sorry, it should be syswow64
> 
> Пт, 14 апр 2017, bill lam написал(а):
>> From your previous msg, it said
>> 'C:\Program Files\j805\bin\j.dll'
>> 
>> please check this is a J32 installation and have registered it 
>> using wow64/regsvr32.
>> 
>> Чт, 13 апр 2017, Herbert Weissenbaeck // Privat написал(а):
>>> I am actually compiling for 32bits (x86) only. (That's sufficient for this 
>>> stage of my development.)
>>> 
>>> Sent from my iPhone
>>> 
>>>> On 13 Apr 2017, at 22:22, bill lam <[email protected]> wrote:
>>>> 
>>>> 32-bit inproc server must be used with an 32-application.
>>>> 32-bit out-of-process server can be used with either 32 or
>>>> 64 application.  Please confirm what are the intended 32/64 bit
>>>> version of jdllserver and application (not visual studio).
>>>> 
>>>> jdllserver is in-proc server so that 32/64 bit must match, with
>>>> application. use regsvr32 inside wow64 folder to register the
>>>> 32-bit j.dll
>>>> 
>>>> Чт, 13 апр 2017, Herbert Weissenbaeck // Privat написал(а):
>>>>> Robert,
>>>>> 
>>>>> coincidentally I had the last Windows update just one hour ago; but the 
>>>>> problem was there before and after.
>>>>> 
>>>>> I am presently traveling and have no access to any other computer than my 
>>>>> notebook; thus I can not try to replicate my problem on another machine.
>>>>> 
>>>>> (I am using VS 2017 Enterprise on an English Windows 10 an a ThinkPad P50 
>>>>> Xeon machine to develop an app that connects to J DLL Server. Had 804 so 
>>>>> far but would like to switch to 805.)
>>>>> 
>>>>> Is anybody successfully using the 32 bit 805 DLL Server from VS in a .net 
>>>>> application?
>>>>> 
>>>>> Best
>>>>> Herbert
>>>>> 
>>>>>> On 13 Apr 2017, at 21:09, robert therriault <[email protected]> 
>>>>>> wrote:
>>>>>> 
>>>>>> Herbert,
>>>>>> 
>>>>>> This may not be related at all, but is this recent?  I read that Windows 
>>>>>> 10 had the Creative update pushed on it in the last couple of days and 
>>>>>> if it was like the last time it may break some things. Not sure why it 
>>>>>> would affect 805 and not 804. ;-)
>>>>>> 
>>>>>> http://www.infoworld.com/article/3189776/microsoft-windows/microsofts-critical-windows-and-office-patches-present-a-panoply-of-problems.html
>>>>>> 
>>>>>> Cheers, bob
>>>>>> 
>>>>>>> On Apr 13, 2017, at 5:57 PM, Herbert Weissenbaeck // Privat 
>>>>>>> <[email protected]> wrote:
>>>>>>> 
>>>>>>> Thank you. Tried to run vs as admin.
>>>>>>> same result
>>>>>>> 
>>>>>>> uninstalled and re-installed j805 into users directory.
>>>>>>> same (negative) result.
>>>>>>> 
>>>>>>> I can however use J EXE Server via COM also in the 805 version (but 
>>>>>>> want J DLL Server, which still gives me an error).
>>>>>>> 
>>>>>>> Any more ideas?
>>>>>>> 
>>>>>>> Sent from my iPhone
>>>>>>> 
>>>>>>>> On 13 Apr 2017, at 20:18, bill lam <[email protected]> wrote:
>>>>>>>> 
>>>>>>>> I am not sure. IIRC It works for me. Perhaps it is a security issue. 
>>>>>>>> try
>>>>>>>> run visual studio as admin.
>>>>>>>> 
>>>>>>>> program files is protected, not sure if this is related to your 
>>>>>>>> problem.
>>>>>>>> 
>>>>>>>> 
>>>>>>>> On 14 Apr, 2017 7:48 am, "Herbert Weissenbaeck // Privat" <
>>>>>>>> [email protected]> wrote:
>>>>>>>> 
>>>>>>>> its regsvr32 without the "/r", i suppose.
>>>>>>>> 
>>>>>>>> in an admin console the registration seems to work. the J DLL Server
>>>>>>>> (version 3) type library shows up in visual studio with file version 
>>>>>>>> 805.
>>>>>>>> (the j804 one showed file version 701.)
>>>>>>>> 
>>>>>>>> however selecting it gives an error: "A reference to 'J DLL Server 
>>>>>>>> (version
>>>>>>>> 3) Type Library' could not be added. Could not register the ActiveX 
>>>>>>>> type
>>>>>>>> library 'C:\Program Files\j805\bin\j.dll'.
>>>>>>>> 
>>>>>>>> the same thing works without any problem with j804. why?
>>>>>>>> 
>>>>>>>> 
>>>>>>>> Sent from my iPhone
>>>>>>>> 
>>>>>>>>> On 13 Apr 2017, at 19:22, bill lam <[email protected]> wrote:
>>>>>>>>> 
>>>>>>>>> typo, regsvr32
>>>>>>>>> 
>>>>>>>>>> On 14 Apr, 2017 7:21 am, "bill lam" <[email protected]> wrote:
>>>>>>>>>> 
>>>>>>>>>> jdllserver should work for all versions. try open an admin command 
>>>>>>>>>> prompt
>>>>>>>>>> at bin folder and type
>>>>>>>>>> regvsr32 /r j.dll
>>>>>>>>>> 
>>>>>>>>>> On 14 Apr, 2017 6:17 am, "Herbert Weissenbaeck // Privat" <
>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>> 
>>>>>>>>>> On my Windows 10 machine J805 fails to register as a COM Server.
>>>>>>>>>> 
>>>>>>>>>> When I use jreg.cmd under 804 I get a "J DLL Server (version 3) Type
>>>>>>>>>> Library" in the kist of available Type Libraries in MS Visual Studio.
>>>>>>>>>> 
>>>>>>>>>> When I do the same with J805, no type library is registered.
>>>>>>>>>> 
>>>>>>>>>> Is this a bug or a feature? I would prefer working with 805 over 804.
>>>>>>>>>> 
>>>>>>>>>> Any hints/fixes?
>>>>>>>>>> 
>>>>>>>>>>> On 13 Apr 2017, at 16:23, 'Bo Jacoby' via Programming <
>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>> 
>>>>>>>>>>> Hi Louis.
>>>>>>>>>>> Thanks for asking. I regret not knowing the answer.
>>>>>>>>>>> An ordinal fraction is like an array in J, with minor differences.
>>>>>>>>>>> - Arrays have names. Ordinal fractions have numbers.
>>>>>>>>>>> - An array has a finite number of dimensions. An ordinal fraction 
>>>>>>>>>>> has
>>>>>>>>>> an infinite number of dimensions.
>>>>>>>>>>> - Arrays may have different shapes. All ordinal fractions have the
>>>>>>>>>> same shape: 9 9 9 9 . . .
>>>>>>>>>>> - Arrays have zero-origin indexing (0 1 . . .  n). Ordinal fractions
>>>>>>>>>> have one-origin indexing (1 2 3 4 5 6 7 8 9).
>>>>>>>>>>> 
>>>>>>>>>>> - Arrays have elements. Ordinal fractions do not have elements.
>>>>>>>>>>> - Arrays may have subarrays. All ordinal fractions have subordinate
>>>>>>>>>> ordinal fractions.
>>>>>>>>>>> - Array elements contain data. Any ordinal fraction may contain a 
>>>>>>>>>>> data
>>>>>>>>>> element.
>>>>>>>>>>> Ordinal fractions were invented (by me) in 1980, but have had 
>>>>>>>>>>> limited
>>>>>>>>>> dissemination so far. I made programs in fortran and pascal and 
>>>>>>>>>> basic for
>>>>>>>>>> manipulating ordinal fraction files, but I have not managed to do it 
>>>>>>>>>> in
>>>>>>>> J.
>>>>>>>>>> The programs were general, because the logic is in the data file and 
>>>>>>>>>> not
>>>>>>>> in
>>>>>>>>>> the program. I have been alone doing this.
>>>>>>>>>>> Thanks! Bo.
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> Den 20:08 torsdag den 13. april 2017 skrev Louis de Forcrand <
>>>>>>>>>> [email protected]>:
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> Hi Bo,
>>>>>>>>>>> This is cool.
>>>>>>>>>>> 
>>>>>>>>>>> As for the way you suggest using it here, isn't it equivalent to
>>>>>>>>>> (without the first six rows of your data):
>>>>>>>>>>> 
>>>>>>>>>>> (~.@[ ,. +//.)/@|:
>>>>>>>>>>> ?
>>>>>>>>>>> 
>>>>>>>>>>> Louis
>>>>>>>>>>> 
>>>>>>>>>>>> On 12 Apr 2017, at 21:57, 'Bo Jacoby' via Programming <
>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>> 
>>>>>>>>>>>> Hi Joe!
>>>>>>>>>>>> My favorite datastructure is ORDINAL FRACTIONS - the algebra of 
>>>>>>>>>>>> data
>>>>>>>>>>>> 
>>>>>>>>>>>> |
>>>>>>>>>>>> |
>>>>>>>>>>>> |
>>>>>>>>>>>> |  |    |
>>>>>>>>>>>> 
>>>>>>>>>>>> |
>>>>>>>>>>>> 
>>>>>>>>>>>> |
>>>>>>>>>>>> |
>>>>>>>>>>>> |    |
>>>>>>>>>>>> ORDINAL FRACTIONS - the algebra of data
>>>>>>>>>>>> This paper was submitted to the 10th World Computer Congress, IFIP 
>>>>>>>>>>>> 1986
>>>>>>>>>> conference, but rejected by the referee....  |  |
>>>>>>>>>>>> 
>>>>>>>>>>>> |
>>>>>>>>>>>> 
>>>>>>>>>>>> |
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> Your data are coded like this
>>>>>>>>>>>> 10 Joe
>>>>>>>>>>>> 20 Bob
>>>>>>>>>>>> 30 Jane
>>>>>>>>>>>> 01 blue
>>>>>>>>>>>> 02 red
>>>>>>>>>>>> 03 purple
>>>>>>>>>>>> 11 1
>>>>>>>>>>>> 11 -1
>>>>>>>>>>>> 11 1
>>>>>>>>>>>> 22 1
>>>>>>>>>>>> 22 1
>>>>>>>>>>>> 22 3
>>>>>>>>>>>> 22 -1
>>>>>>>>>>>> 22 -1
>>>>>>>>>>>> 33 5
>>>>>>>>>>>> 33 -2
>>>>>>>>>>>> 33 2
>>>>>>>>>>>> (Written with double CRs because the mail program has a history of
>>>>>>>>>> deleting my CRs).
>>>>>>>>>>>> Summation gives the result
>>>>>>>>>>>> 10 Joe
>>>>>>>>>>>> 20 Bob
>>>>>>>>>>>> 30 Jane
>>>>>>>>>>>> 01 blue
>>>>>>>>>>>> 02 red
>>>>>>>>>>>> 03 purple
>>>>>>>>>>>> 11 1
>>>>>>>>>>>> 22 3
>>>>>>>>>>>> 
>>>>>>>>>>>> 33 5
>>>>>>>>>>>> I have not done the summation in J, but I'd like to do it.
>>>>>>>>>>>> Perhaps this helps you.
>>>>>>>>>>>> Bo.
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> Den 0:04 torsdag den 13. april 2017 skrev chris burke <
>>>>>>>>>> [email protected]>:
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> Incidentally, for production code, I suggest starting by removing 
>>>>>>>>>>>> any
>>>>>>>>>> sales
>>>>>>>>>>>> not matched in returns and vice versa, so that the matching 
>>>>>>>>>>>> algorithm
>>>>>>>> is
>>>>>>>>>>>> applied only to potential matches.
>>>>>>>>>>>> 
>>>>>>>>>>>>> On Wed, Apr 12, 2017 at 2:53 PM, chris burke 
>>>>>>>>>>>>> <[email protected]>
>>>>>>>>>> wrote:
>>>>>>>>>>>>> 
>>>>>>>>>>>>> Great.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> In case you need more complicated handling of the "gray area"
>>>>>>>>>>>>> transactions, I believe they would be relatively few in number, so
>>>>>>>>>> most of
>>>>>>>>>>>>> the time you could do the matching efficiently, then check for any
>>>>>>>> keys
>>>>>>>>>>>>> with returns preceding sales. For those, setting aside the first 
>>>>>>>>>>>>> such
>>>>>>>>>>>>> return and repeating should clear them quickly.
>>>>>>>>>>>>> 
>>>>>>>>>>>>> Timing should be well under 1 second for a million records.
>>>>>>>>>>>>> 
>>>>>>>>>>>>>> On Wed, Apr 12, 2017 at 1:57 PM, Joe Bogner <[email protected]>
>>>>>>>>>> wrote:
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Just for completeness, I added a line that incorporates the 
>>>>>>>>>>>>>> sequence
>>>>>>>>>> check
>>>>>>>>>>>>>> into the cancel logic. Works great
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> NB. hui progressive index
>>>>>>>>>>>>>> NB. http://code.jsoftware.com/wiki/Essays/Progressive_Index-Of
>>>>>>>>>>>>>> oc=: i.~ (] - {) /:@/:
>>>>>>>>>>>>>> pi=: #@[ ({. i.&(,.oc) }.) [ i. ,
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> NB. argument is 3-col table of seq,key,qty
>>>>>>>>>>>>>> NB. result is the unmatched transactions
>>>>>>>>>>>>>> matchtrans=: 3 : 0
>>>>>>>>>>>>>> msk=. 0<{:"1 y
>>>>>>>>>>>>>> sales=. msk#y
>>>>>>>>>>>>>> returns=. (-.msk)#y
>>>>>>>>>>>>>> ndx=. (}."1 sales) pi | }."1 returns
>>>>>>>>>>>>>> cancels=. ndx<#sales
>>>>>>>>>>>>>> NB. ensure cancel is after sale
>>>>>>>>>>>>>> cancels =. cancels *. (({."1 (<<(cancels)#ndx){sales) < ({."1
>>>>>>>>>>>>>> (cancels#returns)))
>>>>>>>>>>>>>> ((<<<cancels#ndx){sales),(-.cancels)#returns
>>>>>>>>>>>>>> )
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> On Wed, Apr 12, 2017 at 4:14 PM, Joe Bogner 
>>>>>>>>>>>>>>> <[email protected]>
>>>>>>>>>> wrote:
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> Chris, this looks promising. Thanks for sharing. It's nearly 
>>>>>>>>>>>>>>> instant
>>>>>>>>>> on
>>>>>>>>>>>>>> a
>>>>>>>>>>>>>>> million rows.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> Which row had a return before a transaction? seq 10 was an 
>>>>>>>>>>>>>>> example
>>>>>>>>>> of a
>>>>>>>>>>>>>>> partial return. The hypothetical customer returned 2 out of the 
>>>>>>>>>>>>>>> 5
>>>>>>>>>>>>>> purchased
>>>>>>>>>>>>>>> prior. I added that example since technically per the original 
>>>>>>>>>>>>>>> spec
>>>>>>>>>> it
>>>>>>>>>>>>>>> wouldn't be cancelled out in this pass.  It's a gray area so I 
>>>>>>>>>>>>>>> may
>>>>>>>> be
>>>>>>>>>>>>>> able
>>>>>>>>>>>>>>> to use this approach, especially since I don't see how to
>>>>>>>> incorporate
>>>>>>>>>>>>>> the
>>>>>>>>>>>>>>> time element into the progressive index.
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> Thanks again
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> On Wed, Apr 12, 2017 at 3:52 PM, chris burke 
>>>>>>>>>>>>>>> <[email protected]>
>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> This might be done by comparing matrices of sales and returns. 
>>>>>>>>>>>>>>>> The
>>>>>>>>>>>>>>>> function
>>>>>>>>>>>>>>>> below seems to be close to what you want. It doesn't exactly 
>>>>>>>>>>>>>>>> match
>>>>>>>>>> your
>>>>>>>>>>>>>>>> example, but your example has cases where returns are made 
>>>>>>>>>>>>>>>> before
>>>>>>>>>> the
>>>>>>>>>>>>>>>> transactions. Was this intentional?
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> The code should run faster than a looping solution.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> Code:
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> NB. hui progressive index
>>>>>>>>>>>>>>>> NB. http://code.jsoftware.com/wiki/Essays/Progressive_Index-Of
>>>>>>>>>>>>>>>> oc=: i.~ (] - {) /:@/:
>>>>>>>>>>>>>>>> pi=: #@[ ({. i.&(,.oc) }.) [ i. ,
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> NB. argument is 3-col table of seq,key,qty
>>>>>>>>>>>>>>>> NB. result is the unmatched transactions
>>>>>>>>>>>>>>>> matchtrans=: 3 : 0
>>>>>>>>>>>>>>>> msk=. 0<{:"1 y
>>>>>>>>>>>>>>>> sales=. msk#y
>>>>>>>>>>>>>>>> returns=. (-.msk)#y
>>>>>>>>>>>>>>>> ndx=. (}."1 sales) pi | }."1 returns
>>>>>>>>>>>>>>>> cancels=. ndx<#sales
>>>>>>>>>>>>>>>> ((<<<cancels#ndx){sales),(-.cancels)#returns
>>>>>>>>>>>>>>>> )
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> Example:
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> dat=: ".;._2 (0 : 0)
>>>>>>>>>>>>>>>> 1 1 1
>>>>>>>>>>>>>>>> 2 1 _1
>>>>>>>>>>>>>>>> 3 1 1
>>>>>>>>>>>>>>>> 4 2 1
>>>>>>>>>>>>>>>> 5 2 1
>>>>>>>>>>>>>>>> 6 2 3
>>>>>>>>>>>>>>>> 7 2 _1
>>>>>>>>>>>>>>>> 8 2 _1
>>>>>>>>>>>>>>>> 9 3 5
>>>>>>>>>>>>>>>> 10 3 _2
>>>>>>>>>>>>>>>> 11 3 2
>>>>>>>>>>>>>>>> )
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> matchtrans dat
>>>>>>>>>>>>>>>> 3 1 1
>>>>>>>>>>>>>>>> 6 2 3
>>>>>>>>>>>>>>>> 9 3 5
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> On Wed, Apr 12, 2017 at 9:35 AM, Joe Bogner 
>>>>>>>>>>>>>>>> <[email protected]>
>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> I have a problem I'm trying to solve in different languages. I
>>>>>>>>>> have a
>>>>>>>>>>>>>>>>> solution in SQL and also in kdb which largely resembles the 
>>>>>>>>>>>>>>>>> SQL
>>>>>>>>>>>>>>>> solution.
>>>>>>>>>>>>>>>>> I'm curious what a J solution would look like. More 
>>>>>>>>>>>>>>>>> specifically,
>>>>>>>>>> I'm
>>>>>>>>>>>>>>>>> interested in picking the brains of others here to see if this
>>>>>>>> type
>>>>>>>>>>>>>> of
>>>>>>>>>>>>>>>>> problem can be solved without looping (some form of scan?).
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> EDIT: Initially I wrote this up thinking the J solution would
>>>>>>>>>>>>>> difficult,
>>>>>>>>>>>>>>>>> but it was actually fairly straightforward -- about 15 
>>>>>>>>>>>>>>>>> minutes,
>>>>>>>> but
>>>>>>>>>>>>>>>> still
>>>>>>>>>>>>>>>>> would like to see if there are alternatives. If nothing else,
>>>>>>>> maybe
>>>>>>>>>>>>>> an
>>>>>>>>>>>>>>>>> interesting problem to share.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Example data:
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> A store has a transaction log with a sequence for each
>>>>>>>> transaction.
>>>>>>>>>>>>>> The
>>>>>>>>>>>>>>>>> transaction log records a key for a unique customer/item
>>>>>>>>>> combination.
>>>>>>>>>>>>>>>> The
>>>>>>>>>>>>>>>>> transaction log records how many units were purchased or 
>>>>>>>>>>>>>>>>> returned.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Goal:
>>>>>>>>>>>>>>>>> Attempt to match up related transactions and cancel out 
>>>>>>>>>>>>>>>>> instances
>>>>>>>>>>>>>> when
>>>>>>>>>>>>>>>> the
>>>>>>>>>>>>>>>>> customer/item combination is returned at the same quantity as 
>>>>>>>>>>>>>>>>> a
>>>>>>>>>>>>>> previous
>>>>>>>>>>>>>>>>> transaction
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Examples:
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Joe buys 1 blue pen, which is defective, then returns the 1
>>>>>>>>>> defective
>>>>>>>>>>>>>>>> blue
>>>>>>>>>>>>>>>>> pen, then buys another blue pen. EXPECTED: cancel out first 
>>>>>>>>>>>>>>>>> two
>>>>>>>>>>>>>>>>> transactions and leave the the last one for 1 pen
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Bob buys 2 red pens in two separate transactions. He then 
>>>>>>>>>>>>>>>>> buys 3
>>>>>>>>>>>>>> more.
>>>>>>>>>>>>>>>> He
>>>>>>>>>>>>>>>>> returns the first two purchases as two separate return
>>>>>>>>>> transactions.
>>>>>>>>>>>>>>>>> EXPECTED: cancel out all transactions except the one for qty 3
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Jane buys 5 purple pens and subsequently returns two of them. 
>>>>>>>>>>>>>>>>> She
>>>>>>>>>>>>>> buys
>>>>>>>>>>>>>>>> two
>>>>>>>>>>>>>>>>> more. EXPECTED: No transactions match exactly, so nothing is
>>>>>>>>>>>>>> cancelled
>>>>>>>>>>>>>>>> out
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Data:
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> data=: 0 : 0
>>>>>>>>>>>>>>>>> seq key qty
>>>>>>>>>>>>>>>>> 1 1 1
>>>>>>>>>>>>>>>>> 2 1 _1
>>>>>>>>>>>>>>>>> 3 1 1
>>>>>>>>>>>>>>>>> 4 2 1
>>>>>>>>>>>>>>>>> 5 2 1
>>>>>>>>>>>>>>>>> 6 2 3
>>>>>>>>>>>>>>>>> 7 2 _1
>>>>>>>>>>>>>>>>> 8 2 _1
>>>>>>>>>>>>>>>>> 9 3 5
>>>>>>>>>>>>>>>>> 10 3 _2
>>>>>>>>>>>>>>>>> 11 3 2
>>>>>>>>>>>>>>>>> )
>>>>>>>>>>>>>>>>> tbl =: ,. ' ' cut every cutLF data
>>>>>>>>>>>>>>>>> 'seqs keys qtys' =: |: ". every }. tbl
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Goal:
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> goals =: 0 : 0
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> goal
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> cancelled
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> credit
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> ok
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> cancelled
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> cancelled
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> ok
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> credit
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> credit
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> ok
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> ok
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> ok
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> )
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> tbl,.(cutLF goals)
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |seq|key|qty|goal |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |1 |1 |1 |cancelled|
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |2 |1 |_1 |credit |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |3 |1 |1 |ok |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |4 |2 |1 |cancelled|
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |5 |2 |1 |cancelled|
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |6 |2 |3 |ok |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |7 |2 |_1 |credit |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |8 |2 |_1 |credit |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |9 |3 |5 |ok |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |10 |3 |_2 |ok |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |11 |3 |2 |ok |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> One approach:
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> applycredits =: 3 : 0
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> goals=.(<'goal')
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> creditids=.0
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> for_i. (i. # seqs) do.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> key=.i{keys
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> seq=.i{seqs
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> qty=.i{qtys
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> nextcredit =.| {. qtys #~ ((key=keys)*(seqs>seq)*(qtys<0))
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> if. nextcredit = qty do.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> goals=.goals,<'cancelled'
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> creditids =. creditids, seqs #~ 
>>>>>>>>>>>>>>>>> ((key=keys)*(seqs>seq)*(qtys<0))
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> elseif. creditids e.~ seq do.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> goals=.goals,<'credit'
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> elseif. do.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> goals=.goals,<'ok'
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> end.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> end.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> goals
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> )
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> tbl ,. ( applycredits 0 )
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |seq|key|qty|goal |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |1 |1 |1 |cancelled|
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |2 |1 |_1 |credit |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |3 |1 |1 |ok |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |4 |2 |1 |cancelled|
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |5 |2 |1 |cancelled|
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |6 |2 |3 |ok |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |7 |2 |_1 |credit |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |8 |2 |_1 |credit |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |9 |3 |5 |ok |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |10 |3 |_2 |ok |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> |11 |3 |2 |ok |
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> +---+---+---+---------+
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> (cutLF goals) -: ( applycredits 0 )
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 1
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> thanks for any input
>>>>>>>>>>>>>>>>> ------------------------------------------------------------
>>>>>>>>>>>>>> ----------
>>>>>>>>>>>>>>>>> For information about J forums see 
>>>>>>>>>>>>>>>>> http://www.jsoftware.com/forum
>>>>>>>>>>>>>> s.htm
>>>>>>>>>>>>>>>> ------------------------------------------------------------
>>>>>>>>>> ----------
>>>>>>>>>>>>>>>> For information about J forums see 
>>>>>>>>>>>>>>>> http://www.jsoftware.com/forum
>>>>>>>>>> s.htm
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> ------------------------------------------------------------
>>>>>>>>>> ----------
>>>>>>>>>>>>>> For information about J forums see http://www.jsoftware.com/forum
>>>>>>>>>> s.htm
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> ----------------------------------------------------------------------
>>>>>>>>>>>> For information about J forums see 
>>>>>>>>>>>> http://www.jsoftware.com/forums.htm
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> ----------------------------------------------------------------------
>>>>>>>>>>>> For information about J forums see 
>>>>>>>>>>>> http://www.jsoftware.com/forums.htm
>>>>>>>>>>> 
>>>>>>>>>>> ----------------------------------------------------------------------
>>>>>>>>>>> For information about J forums see 
>>>>>>>>>>> http://www.jsoftware.com/forums.htm
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> ----------------------------------------------------------------------
>>>>>>>>>>> For information about J forums see 
>>>>>>>>>>> http://www.jsoftware.com/forums.htm
>>>>>>>>>> 
>>>>>>>>>> ----------------------------------------------------------------------
>>>>>>>>>> For information about J forums see 
>>>>>>>>>> http://www.jsoftware.com/forums.htm
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>> ----------------------------------------------------------------------
>>>>>>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>>>>>> 
>>>>>>>> ----------------------------------------------------------------------
>>>>>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>>>>>> ----------------------------------------------------------------------
>>>>>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>>>>> 
>>>>>>> ----------------------------------------------------------------------
>>>>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>>>> 
>>>>>> ----------------------------------------------------------------------
>>>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>>> 
>>>>> ----------------------------------------------------------------------
>>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>> 
>>>> -- 
>>>> regards,
>>>> ====================================================
>>>> GPG key 1024D/4434BAB3 2008-08-24
>>>> gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
>>>> gpg --keyserver subkeys.pgp.net --armor --export 4434BAB3
>>>> ----------------------------------------------------------------------
>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>> 
>>> ----------------------------------------------------------------------
>>> For information about J forums see http://www.jsoftware.com/forums.htm
>> 
>> -- 
>> regards,
>> ====================================================
>> GPG key 1024D/4434BAB3 2008-08-24
>> gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
>> gpg --keyserver subkeys.pgp.net --armor --export 4434BAB3
> 
> -- 
> regards,
> ====================================================
> GPG key 1024D/4434BAB3 2008-08-24
> gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
> gpg --keyserver subkeys.pgp.net --armor --export 4434BAB3
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to