Discussion:
Numbering Scheme
Frank Cazabon
2018-10-10 19:25:24 UTC
Permalink
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of the
day (read that as check for stealing) when checking the various parcels
received for the tickets issued (they keep a copy of the ticket issued
to their customer and at the end of the day sort them sequentially and
read the numbers off the tickets to ensure they match the parcels). They
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers how
much business they are doing (by getting a ticket early in the morning
and then one ate in the afternoon).

So, they have asked me to come up with a solution and I must admit that
I am coming up blank.

Any ideas?
--
Frank.

Frank Cazabon


_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/efc76e1f-f822-a56a-ba84-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Stephen Russell
2018-10-10 19:33:10 UTC
Permalink
Go binary! 10010110101 They are kicking ass today!
Post by Frank Cazabon
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of the
day (read that as check for stealing) when checking the various parcels
received for the tickets issued (they keep a copy of the ticket issued
to their customer and at the end of the day sort them sequentially and
read the numbers off the tickets to ensure they match the parcels). They
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers how
much business they are doing (by getting a ticket early in the morning
and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit that
I am coming up blank.
Any ideas?
--
Frank.
Frank Cazabon
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/CAJidMYKyewV-***@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
John Weller
2018-10-10 19:42:05 UTC
Permalink
ROFL.

John Weller
01380 723235
07976 393631


Go binary! 10010110101 They are kicking ass today!



_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/014901d460d1$53cfddb0$fb6f9910$@johnweller.co.uk
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Eric Selje
2018-10-10 19:41:56 UTC
Permalink
Or Hex?

What difference does it make if the competition knows how much business
you're doing?

E
Post by Stephen Russell
Go binary! 10010110101 They are kicking ass today!
Post by Frank Cazabon
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of the
day (read that as check for stealing) when checking the various parcels
received for the tickets issued (they keep a copy of the ticket issued
to their customer and at the end of the day sort them sequentially and
read the numbers off the tickets to ensure they match the parcels). They
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers how
much business they are doing (by getting a ticket early in the morning
and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit that
I am coming up blank.
Any ideas?
--
Frank.
Frank Cazabon
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/CAAwxvUk8NeHAO5sXSh7x_QYxP-xVHLF+***@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Frank Cazabon
2018-10-11 15:02:50 UTC
Permalink
Post by Eric Selje
What difference does it make if the competition knows how much business
you're doing?
I really couldn't say. They seem to "spy" on their competitors this way
and think their competitors also do it to them. I really don't
understand their reasoning, but then again these are clients who
wouldn't let me remotely connect to their systems until just a couple
years ago.

Frank.

Frank Cazabon



_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/c877bcff-cd8d-5f5f-1426-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Frank Cazabon
2018-10-10 21:24:37 UTC
Permalink
But how will the staff be able to read the binary numbers off the ticket and know it's in sequence?
Post by Stephen Russell
Go binary! 10010110101 They are kicking ass today!
Post by Frank Cazabon
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of
the
Post by Frank Cazabon
day (read that as check for stealing) when checking the various
parcels
Post by Frank Cazabon
received for the tickets issued (they keep a copy of the ticket
issued
Post by Frank Cazabon
to their customer and at the end of the day sort them sequentially
and
Post by Frank Cazabon
read the numbers off the tickets to ensure they match the parcels).
They
Post by Frank Cazabon
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers
how
Post by Frank Cazabon
much business they are doing (by getting a ticket early in the
morning
Post by Frank Cazabon
and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit
that
Post by Frank Cazabon
I am coming up blank.
Any ideas?
--
Frank.
Frank Cazabon
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/23967420-B81A-4B14-A406-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Stephen Russell
2018-10-10 21:35:14 UTC
Permalink
01 =1 10=2

Why not print a QR Barcode and stick the number in there instead?
Post by Frank Cazabon
But how will the staff be able to read the binary numbers off the ticket
and know it's in sequence?
On 10 October 2018 15:33:10 GMT-04:00, Stephen Russell <
Post by Stephen Russell
Go binary! 10010110101 They are kicking ass today!
Post by Frank Cazabon
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of
the
Post by Frank Cazabon
day (read that as check for stealing) when checking the various
parcels
Post by Frank Cazabon
received for the tickets issued (they keep a copy of the ticket
issued
Post by Frank Cazabon
to their customer and at the end of the day sort them sequentially
and
Post by Frank Cazabon
read the numbers off the tickets to ensure they match the parcels).
They
Post by Frank Cazabon
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers
how
Post by Frank Cazabon
much business they are doing (by getting a ticket early in the
morning
Post by Frank Cazabon
and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit
that
Post by Frank Cazabon
I am coming up blank.
Any ideas?
--
Frank.
Frank Cazabon
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/CAJidMYLaOkaVfq37kHJqADtMEfLO1Y8AqBNcH1boO90f-***@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Frank Cazabon
2018-10-11 14:51:24 UTC
Permalink
They have a barcode on the ticket, but we also print the number. They
(for whatever reason) found that using the barcode was too hard.

A QR code won't make it any easier. :(

Frank.

Frank Cazabon
Post by Stephen Russell
01 =1 10=2
Why not print a QR Barcode and stick the number in there instead?
Post by Frank Cazabon
But how will the staff be able to read the binary numbers off the ticket
and know it's in sequence?
On 10 October 2018 15:33:10 GMT-04:00, Stephen Russell <
Post by Stephen Russell
Go binary! 10010110101 They are kicking ass today!
Post by Frank Cazabon
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of
the
Post by Frank Cazabon
day (read that as check for stealing) when checking the various
parcels
Post by Frank Cazabon
received for the tickets issued (they keep a copy of the ticket
issued
Post by Frank Cazabon
to their customer and at the end of the day sort them sequentially
and
Post by Frank Cazabon
read the numbers off the tickets to ensure they match the parcels).
They
Post by Frank Cazabon
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers
how
Post by Frank Cazabon
much business they are doing (by getting a ticket early in the
morning
Post by Frank Cazabon
and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit
that
Post by Frank Cazabon
I am coming up blank.
Any ideas?
--
Frank.
Frank Cazabon
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/2c1baeb8-6b7e-d1cb-bf2e-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Ted Roche
2018-10-10 19:42:30 UTC
Permalink
Keep a table with the primary key (a non-data-bearing auto-incremented
integer) as the sequential number, to ensure things don't go missing out of
sequence.

For each ticket, create a unique number that's not already in the table.
Use the random functions to generate a mix of numbers and letters, and
check to ensure that's not already in use. (You could use GUIDs, but they
are too long for practical use, I suspect.)

At the end of the day, you can match a list of the random "ticket numbers"
against your list in primary key order to ensure no tickets were
"misplaced."
Post by Frank Cazabon
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of the
day (read that as check for stealing) when checking the various parcels
received for the tickets issued (they keep a copy of the ticket issued
to their customer and at the end of the day sort them sequentially and
read the numbers off the tickets to ensure they match the parcels). They
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers how
much business they are doing (by getting a ticket early in the morning
and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit that
I am coming up blank.
Any ideas?
--
Frank.
Frank Cazabon
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/CACW6n4tr+aEk4e3KO2VsJSkTb41dPG7Aq9szgSV0Rr+***@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Vassilis Aggelakos
2018-10-10 19:46:45 UTC
Permalink
Multiply the number by 3.

Vassilis
Post by Ted Roche
Keep a table with the primary key (a non-data-bearing auto-incremented
integer) as the sequential number, to ensure things don't go missing out of
sequence.
For each ticket, create a unique number that's not already in the table.
Use the random functions to generate a mix of numbers and letters, and
check to ensure that's not already in use. (You could use GUIDs, but they
are too long for practical use, I suspect.)
At the end of the day, you can match a list of the random "ticket numbers"
against your list in primary key order to ensure no tickets were
"misplaced."
Post by Frank Cazabon
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of the
day (read that as check for stealing) when checking the various parcels
received for the tickets issued (they keep a copy of the ticket issued
to their customer and at the end of the day sort them sequentially and
read the numbers off the tickets to ensure they match the parcels). They
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers how
much business they are doing (by getting a ticket early in the morning
and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit that
I am coming up blank.
Any ideas?
--
Frank.
Frank Cazabon
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/943B4C27-8D24-4430-B4EF-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Frank Cazabon
2018-10-11 14:52:30 UTC
Permalink
That would still involve some thought on the users part (and they don't
think at all).

Frank.

Frank Cazabon
Post by Vassilis Aggelakos
Multiply the number by 3.
Vassilis
Post by Ted Roche
Keep a table with the primary key (a non-data-bearing auto-incremented
integer) as the sequential number, to ensure things don't go missing out of
sequence.
For each ticket, create a unique number that's not already in the table.
Use the random functions to generate a mix of numbers and letters, and
check to ensure that's not already in use. (You could use GUIDs, but they
are too long for practical use, I suspect.)
At the end of the day, you can match a list of the random "ticket numbers"
against your list in primary key order to ensure no tickets were
"misplaced."
Post by Frank Cazabon
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of the
day (read that as check for stealing) when checking the various parcels
received for the tickets issued (they keep a copy of the ticket issued
to their customer and at the end of the day sort them sequentially and
read the numbers off the tickets to ensure they match the parcels). They
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers how
much business they are doing (by getting a ticket early in the morning
and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit that
I am coming up blank.
Any ideas?
--
Frank.
Frank Cazabon
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/b2de92b7-81df-a16d-2e94-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Frank Cazabon
2018-10-10 21:28:23 UTC
Permalink
So effectively display one number on the ticket but when it comes to checking, run a report displaying the sequential numbers and the random/nonsense number?
Post by Ted Roche
Keep a table with the primary key (a non-data-bearing auto-incremented
integer) as the sequential number, to ensure things don't go missing out of
sequence.
For each ticket, create a unique number that's not already in the table.
Use the random functions to generate a mix of numbers and letters, and
check to ensure that's not already in use. (You could use GUIDs, but they
are too long for practical use, I suspect.)
At the end of the day, you can match a list of the random "ticket numbers"
against your list in primary key order to ensure no tickets were
"misplaced."
Post by Frank Cazabon
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of
the
Post by Frank Cazabon
day (read that as check for stealing) when checking the various
parcels
Post by Frank Cazabon
received for the tickets issued (they keep a copy of the ticket
issued
Post by Frank Cazabon
to their customer and at the end of the day sort them sequentially
and
Post by Frank Cazabon
read the numbers off the tickets to ensure they match the parcels).
They
Post by Frank Cazabon
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers
how
Post by Frank Cazabon
much business they are doing (by getting a ticket early in the
morning
Post by Frank Cazabon
and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit
that
Post by Frank Cazabon
I am coming up blank.
Any ideas?
--
Frank.
Frank Cazabon
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/C67BBFB7-E54C-458A-B523-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Richard Kaye
2018-10-10 19:48:27 UTC
Permalink
One way is to come up with a 10 letter "word" with each letter representing a digit. You then convert the numeric sequence to alpha characters. And to avoid the pattern being too easily spotted, add one or more random characters to the final string. It's not the most robust encryption scheme in the world but it should obscure it enough. Here's a bit of VFP code to do this using the non-dictionary phrase MONKEYSHIP as the rebus. Pass it the number to encode and optionally .t. as the second parameter to append a single random character at the end.

**************************************
* Program: MONKEYSHIP.PRG
* Date: 05/07/2007 03:26 PM
* VFP Version: Visual FoxPro 09.00.0000.7423 for Windows
* Notes:
**************************************

FUNCTION MonkeyShip(m.tnStringToEncode AS Number, m.tlRandom AS Boolean)
LOCAL m.lcRetval AS Character
m.lcStringToEncode=ALLTRIM(TRANSFORM(m.tnStringToEncode,[999999999999999]))
LOCAL ARRAY laRebus[10,2]
m.laRebus[1,1]=1
m.laRebus[1,2]=[M]
m.laRebus[2,1]=2
m.laRebus[2,2]=[O]
m.laRebus[3,1]=3
m.laRebus[3,2]=[N]
m.laRebus[4,1]=4
m.laRebus[4,2]=[K]
m.laRebus[5,1]=5
m.laRebus[5,2]=[E]
m.laRebus[6,1]=6
m.laRebus[6,2]=[Y]
m.laRebus[7,1]=7
m.laRebus[7,2]=[S]
m.laRebus[8,1]=8
m.laRebus[8,2]=[H]
m.laRebus[9,1]=9
m.laRebus[9,2]=[I]
m.laRebus[10,1]=0
m.laRebus[10,2]=[P]
m.lcRetval=[]
m.lcChar=[]
FOR m.x=1 TO LEN(ALLTRIM(m.lcStringToEncode))
m.lcChar=m.laRebus[ASCAN(m.laRebus,VAL(SUBSTR(m.lcStringToEncode,x,1)),1,-1,1,8),2]
m.lcRetval=m.lcRetval+m.lcChar
NEXT
IF m.tlRandom
LOCAL m.liCounter AS Integer
PRIVATE m.pcRandomChar
m.pcRandomChar=[ ]
m.liCounter=1
*!* get a bunch of values to work with which will hopefully give at least one alpha not in monkeyship
DO WHILE NOT ReturnRandom()
m.liCounter=m.liCounter+1
IF m.liCounter=10
EXIT
ENDIF
ENDDO
IF m.liCounter=10 && we went through loop 10 times and could not get a char back
m.lcRetval=[Q]+m.lcRetval
ELSE
m.lcRetval=m.pcRandomChar+m.lcRetval
ENDIF
ENDIF
RETURN m.lcRetval
ENDFUNC

FUNCTION ReturnRandom
LOCAL m.lcRandomSeed AS Character, m.lIsGood AS Boolean
*!* get a bunch of values to work with which will hopefully give at least one alpha not in monkeyship
m.lcRandomSeed=SYS(2015)+SYS(2015)+SYS(2015)+SYS(2015)
m.lIsGood=.f.
FOR m.y=LEN(m.lcRandomSeed) TO 2 STEP -1 && don't need to check first char in sys(2015)
IF ISALPHA(SUBSTR(m.lcRandomSeed,y,1)) AND NOT UPPER(SUBSTR(m.lcRandomSeed,y,1))$[MONKEYSHIP]
m.pcRandomChar=SUBSTR(m.lcRandomSeed,y,1)
m.lIsGood=.t.
EXIT
ELSE
m.lIsGood=.f.
ENDIF
NEXT
RETURN m.lIsGood
ENDFUNC

--

rk

-----Original Message-----
From: ProfoxTech <profoxtech-***@leafe.com> On Behalf Of Frank Cazabon
Sent: Wednesday, October 10, 2018 3:25 PM
To: ***@leafe.com
Subject: Numbering Scheme

I have a client who issues tickets in numerical sequence (it's a pawnshop). The sequence helps them balance things back at the end of the day (read that as check for stealing) when checking the various parcels received for the tickets issued (they keep a copy of the ticket issued to their customer and at the end of the day sort them sequentially and read the numbers off the tickets to ensure they match the parcels). They are now not wanting the number printed on the ticket as their competitors may be able to get an idea from the sequential numbers how much business they are doing (by getting a ticket early in the morning and then one ate in the afternoon).

So, they have asked me to come up with a solution and I must admit that I am coming up blank.

Any ideas?
--
Frank.

Frank Cazabon


_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/***@BN6PR10MB1299.namprd10.prod.outlook.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Frank Cazabon
2018-10-11 14:54:08 UTC
Permalink
Thanks, Obscuring the number is not a problem, but I think they want to
be able to read the number off the ticket at the end of the day in
sequential order and I don't see how I can come up with a simple way to
do this.

Frank.

Frank Cazabon
Post by Richard Kaye
One way is to come up with a 10 letter "word" with each letter representing a digit. You then convert the numeric sequence to alpha characters. And to avoid the pattern being too easily spotted, add one or more random characters to the final string. It's not the most robust encryption scheme in the world but it should obscure it enough. Here's a bit of VFP code to do this using the non-dictionary phrase MONKEYSHIP as the rebus. Pass it the number to encode and optionally .t. as the second parameter to append a single random character at the end.
**************************************
* Program: MONKEYSHIP.PRG
* Date: 05/07/2007 03:26 PM
* VFP Version: Visual FoxPro 09.00.0000.7423 for Windows
**************************************
FUNCTION MonkeyShip(m.tnStringToEncode AS Number, m.tlRandom AS Boolean)
LOCAL m.lcRetval AS Character
m.lcStringToEncode=ALLTRIM(TRANSFORM(m.tnStringToEncode,[999999999999999]))
LOCAL ARRAY laRebus[10,2]
m.laRebus[1,1]=1
m.laRebus[1,2]=[M]
m.laRebus[2,1]=2
m.laRebus[2,2]=[O]
m.laRebus[3,1]=3
m.laRebus[3,2]=[N]
m.laRebus[4,1]=4
m.laRebus[4,2]=[K]
m.laRebus[5,1]=5
m.laRebus[5,2]=[E]
m.laRebus[6,1]=6
m.laRebus[6,2]=[Y]
m.laRebus[7,1]=7
m.laRebus[7,2]=[S]
m.laRebus[8,1]=8
m.laRebus[8,2]=[H]
m.laRebus[9,1]=9
m.laRebus[9,2]=[I]
m.laRebus[10,1]=0
m.laRebus[10,2]=[P]
m.lcRetval=[]
m.lcChar=[]
FOR m.x=1 TO LEN(ALLTRIM(m.lcStringToEncode))
m.lcChar=m.laRebus[ASCAN(m.laRebus,VAL(SUBSTR(m.lcStringToEncode,x,1)),1,-1,1,8),2]
m.lcRetval=m.lcRetval+m.lcChar
NEXT
IF m.tlRandom
LOCAL m.liCounter AS Integer
PRIVATE m.pcRandomChar
m.pcRandomChar=[ ]
m.liCounter=1
*!* get a bunch of values to work with which will hopefully give at least one alpha not in monkeyship
DO WHILE NOT ReturnRandom()
m.liCounter=m.liCounter+1
IF m.liCounter=10
EXIT
ENDIF
ENDDO
IF m.liCounter=10 && we went through loop 10 times and could not get a char back
m.lcRetval=[Q]+m.lcRetval
ELSE
m.lcRetval=m.pcRandomChar+m.lcRetval
ENDIF
ENDIF
RETURN m.lcRetval
ENDFUNC
FUNCTION ReturnRandom
LOCAL m.lcRandomSeed AS Character, m.lIsGood AS Boolean
*!* get a bunch of values to work with which will hopefully give at least one alpha not in monkeyship
m.lcRandomSeed=SYS(2015)+SYS(2015)+SYS(2015)+SYS(2015)
m.lIsGood=.f.
FOR m.y=LEN(m.lcRandomSeed) TO 2 STEP -1 && don't need to check first char in sys(2015)
IF ISALPHA(SUBSTR(m.lcRandomSeed,y,1)) AND NOT UPPER(SUBSTR(m.lcRandomSeed,y,1))$[MONKEYSHIP]
m.pcRandomChar=SUBSTR(m.lcRandomSeed,y,1)
m.lIsGood=.t.
EXIT
ELSE
m.lIsGood=.f.
ENDIF
NEXT
RETURN m.lIsGood
ENDFUNC
--
rk
-----Original Message-----
Sent: Wednesday, October 10, 2018 3:25 PM
Subject: Numbering Scheme
I have a client who issues tickets in numerical sequence (it's a pawnshop). The sequence helps them balance things back at the end of the day (read that as check for stealing) when checking the various parcels received for the tickets issued (they keep a copy of the ticket issued to their customer and at the end of the day sort them sequentially and read the numbers off the tickets to ensure they match the parcels). They are now not wanting the number printed on the ticket as their competitors may be able to get an idea from the sequential numbers how much business they are doing (by getting a ticket early in the morning and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit that I am coming up blank.
Any ideas?
_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/02f4188a-69d1-4d94-d383-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Alan Bourke
2018-10-11 14:55:25 UTC
Permalink
Do you care more about competitors overestimating or underestimating the amount of business being done?
--
Alan Bourke
alanpbourke (at) fastmail (dot) fm

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/***@webmail.messagingengine.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Vassilis Aggelakos
2018-10-11 14:59:39 UTC
Permalink
Try to put the real number between two 1 single digit other numbers. For
example 3452 --> 3=dummy 45 = real sequence 2--> dummy.

No math needed, just this little trick!

Hope this helps.
Post by Alan Bourke
Do you care more about competitors overestimating or underestimating the
amount of business being done?
--
Alan Bourke
alanpbourke (at) fastmail (dot) fm
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/CACF5tU=WzV1iF=***@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Ed Leafe
2018-10-11 15:03:27 UTC
Permalink
Post by Vassilis Aggelakos
Try to put the real number between two 1 single digit other numbers. For
example 3452 --> 3=dummy 45 = real sequence 2--> dummy.
No math needed, just this little trick!
This is the best solution so far! You could use multiple extra digits on the left and right of the true number, and randomize them.


-- Ed Leafe






_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/5BF9CB70-7224-418F-B6C5-***@leafe.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Vassilis Aggelakos
2018-10-11 15:10:40 UTC
Permalink
If you want it a bit more sophisticated, the last digit it could denote how
many digits are dummy in the begining.

E.g: 45672 --> 45=dummy --> 67 real number and 2 dummy indicator.
Post by Ed Leafe
Post by Vassilis Aggelakos
Try to put the real number between two 1 single digit other numbers. For
example 3452 --> 3=dummy 45 = real sequence 2--> dummy.
No math needed, just this little trick!
This is the best solution so far! You could use multiple extra digits on
the left and right of the true number, and randomize them.
-- Ed Leafe
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/CACF5tU=bmTOcQJAY=VdnUHXv9uSshQNE31p0ET=bo0D6-***@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Frank Cazabon
2018-10-11 15:12:17 UTC
Permalink
That may work!

Frank.

Frank Cazabon
Post by Vassilis Aggelakos
Try to put the real number between two 1 single digit other numbers. For
example 3452 --> 3=dummy 45 = real sequence 2--> dummy.
No math needed, just this little trick!
Hope this helps.
Post by Alan Bourke
Do you care more about competitors overestimating or underestimating the
amount of business being done?
--
Alan Bourke
alanpbourke (at) fastmail (dot) fm
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/86f6d32d-b2e4-f922-7c8d-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Jean MAURICE
2018-10-11 16:34:10 UTC
Permalink
so to improve this solution : print the time and then add the sequential number
as milliseconds such as :
172543.124 : the ticket has been printed at 17h25m43s and is the 124th ...

The Foxil
Post by Frank Cazabon
That may work!
Frank.
Frank Cazabon
Post by Vassilis Aggelakos
Try to put the real number between two 1 single digit other numbers. For
example 3452 --> 3=dummy 45 = real sequence 2--> dummy.
No math needed, just this little trick!
Hope this helps.
Post by Alan Bourke
Do you care more about competitors overestimating or underestimating the
amount of business being done?
--
   Alan Bourke
   alanpbourke (at) fastmail (dot) fm
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/b3ce60bd-469c-41ed-b3ce-***@wanadoo.fr
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see t
Frank Cazabon
2018-10-11 15:03:41 UTC
Permalink
I would guess they are more concerned about overestimating, but that's
just a WAG.

Frank.

Frank Cazabon
Post by Alan Bourke
Do you care more about competitors overestimating or underestimating the amount of business being done?
_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/4610a3e5-10cd-0a30-42ab-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Ted Roche
2018-10-11 15:06:28 UTC
Permalink
Post by Frank Cazabon
Thanks, Obscuring the number is not a problem, but I think they want to
be able to read the number off the ticket at the end of the day in
sequential order and I don't see how I can come up with a simple way to
do this.
Invisible Ink <g>
--
Ted Roche
Ted Roche & Associates, LLC
http://www.tedroche.com


--- StripMime Report -- processed MIME parts ---
multipart/alternative
text/plain (text body -- kept)
text/html
---

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/CACW6n4uMLJjcCgTDKZmUsTn9wq4xYhwfR2vwS1LquOLy=***@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Frank Cazabon
2018-10-11 15:12:45 UTC
Permalink
LOL!

Frank.

Frank Cazabon
Post by Ted Roche
Post by Frank Cazabon
Thanks, Obscuring the number is not a problem, but I think they want to
be able to read the number off the ticket at the end of the day in
sequential order and I don't see how I can come up with a simple way to
do this.
Invisible Ink <g>
_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/b375654b-44bf-89e7-eafa-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Richard Kaye
2018-10-11 15:07:58 UTC
Permalink
The people in the know memorize the rebus. But you mentioned nobody wants to think so...

--

rk

-----Original Message-----
From: ProfoxTech <profoxtech-***@leafe.com> On Behalf Of Frank Cazabon
Sent: Thursday, October 11, 2018 10:54 AM
To: ***@leafe.com
Subject: Re: Numbering Scheme

Thanks, Obscuring the number is not a problem, but I think they want to be able to read the number off the ticket at the end of the day in sequential order and I don't see how I can come up with a simple way to do this.

Frank.

Frank Cazabon
Post by Richard Kaye
One way is to come up with a 10 letter "word" with each letter representing a digit. You then convert the numeric sequence to alpha characters. And to avoid the pattern being too easily spotted, add one or more random characters to the final string. It's not the most robust encryption scheme in the world but it should obscure it enough. Here's a bit of VFP code to do this using the non-dictionary phrase MONKEYSHIP as the rebus. Pass it the number to encode and optionally .t. as the second parameter to append a single random character at the end.
**************************************
* Program: MONKEYSHIP.PRG
* Date: 05/07/2007 03:26 PM
* VFP Version: Visual FoxPro 09.00.0000.7423 for Windows
**************************************
FUNCTION MonkeyShip(m.tnStringToEncode AS Number, m.tlRandom AS
Boolean) LOCAL m.lcRetval AS Character
m.lcStringToEncode=ALLTRIM(TRANSFORM(m.tnStringToEncode,[9999999999999
99]))
LOCAL ARRAY laRebus[10,2]
m.laRebus[1,1]=1
m.laRebus[1,2]=[M]
m.laRebus[2,1]=2
m.laRebus[2,2]=[O]
m.laRebus[3,1]=3
m.laRebus[3,2]=[N]
m.laRebus[4,1]=4
m.laRebus[4,2]=[K]
m.laRebus[5,1]=5
m.laRebus[5,2]=[E]
m.laRebus[6,1]=6
m.laRebus[6,2]=[Y]
m.laRebus[7,1]=7
m.laRebus[7,2]=[S]
m.laRebus[8,1]=8
m.laRebus[8,2]=[H]
m.laRebus[9,1]=9
m.laRebus[9,2]=[I]
m.laRebus[10,1]=0
m.laRebus[10,2]=[P]
m.lcRetval=[]
m.lcChar=[]
FOR m.x=1 TO LEN(ALLTRIM(m.lcStringToEncode))
m.lcChar=m.laRebus[ASCAN(m.laRebus,VAL(SUBSTR(m.lcStringToEncode,x,1)),1,-1,1,8),2]
m.lcRetval=m.lcRetval+m.lcChar
NEXT
IF m.tlRandom
LOCAL m.liCounter AS Integer
PRIVATE m.pcRandomChar
m.pcRandomChar=[ ]
m.liCounter=1
*!* get a bunch of values to work with which will hopefully give at least one alpha not in monkeyship
DO WHILE NOT ReturnRandom()
m.liCounter=m.liCounter+1
IF m.liCounter=10
EXIT
ENDIF
ENDDO
IF m.liCounter=10 && we went through loop 10 times and could not get a char back
m.lcRetval=[Q]+m.lcRetval
ELSE
m.lcRetval=m.pcRandomChar+m.lcRetval
ENDIF
ENDIF
RETURN m.lcRetval
ENDFUNC
FUNCTION ReturnRandom
LOCAL m.lcRandomSeed AS Character, m.lIsGood AS Boolean
*!* get a bunch of values to work with which will hopefully give at
least one alpha not in monkeyship
m.lcRandomSeed=SYS(2015)+SYS(2015)+SYS(2015)+SYS(2015)
m.lIsGood=.f.
FOR m.y=LEN(m.lcRandomSeed) TO 2 STEP -1 && don't need to check first char in sys(2015)
IF ISALPHA(SUBSTR(m.lcRandomSeed,y,1)) AND NOT UPPER(SUBSTR(m.lcRandomSeed,y,1))$[MONKEYSHIP]
m.pcRandomChar=SUBSTR(m.lcRandomSeed,y,1)
m.lIsGood=.t.
EXIT
ELSE
m.lIsGood=.f.
ENDIF
NEXT
RETURN m.lIsGood
ENDFUNC
--
rk
-----Original Message-----
Sent: Wednesday, October 10, 2018 3:25 PM
Subject: Numbering Scheme
I have a client who issues tickets in numerical sequence (it's a pawnshop). The sequence helps them balance things back at the end of the day (read that as check for stealing) when checking the various parcels received for the tickets issued (they keep a copy of the ticket issued to their customer and at the end of the day sort them sequentially and read the numbers off the tickets to ensure they match the parcels). They are now not wanting the number printed on the ticket as their competitors may be able to get an idea from the sequential numbers how much business they are doing (by getting a ticket early in the morning and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit that I am coming up blank.
Any ideas?
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/***@BN6PR10MB1299.namprd10.prod.outlook.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Stephen Russell
2018-10-11 18:10:36 UTC
Permalink
Why not make a dashboard that has a Count for the Day on it. If you have
really simple people this might work?
Post by Frank Cazabon
Thanks, Obscuring the number is not a problem, but I think they want to
be able to read the number off the ticket at the end of the day in
sequential order and I don't see how I can come up with a simple way to
do this.
Frank.
Frank Cazabon
Post by Richard Kaye
One way is to come up with a 10 letter "word" with each letter
representing a digit. You then convert the numeric sequence to alpha
characters. And to avoid the pattern being too easily spotted, add one or
more random characters to the final string. It's not the most robust
encryption scheme in the world but it should obscure it enough. Here's a
bit of VFP code to do this using the non-dictionary phrase MONKEYSHIP as
the rebus. Pass it the number to encode and optionally .t. as the second
parameter to append a single random character at the end.
Post by Richard Kaye
**************************************
* Program: MONKEYSHIP.PRG
* Date: 05/07/2007 03:26 PM
* VFP Version: Visual FoxPro 09.00.0000.7423 for Windows
**************************************
FUNCTION MonkeyShip(m.tnStringToEncode AS Number, m.tlRandom AS Boolean)
LOCAL m.lcRetval AS Character
m.lcStringToEncode=ALLTRIM(TRANSFORM(m.tnStringToEncode,[999999999999999]))
Post by Richard Kaye
LOCAL ARRAY laRebus[10,2]
m.laRebus[1,1]=1
m.laRebus[1,2]=[M]
m.laRebus[2,1]=2
m.laRebus[2,2]=[O]
m.laRebus[3,1]=3
m.laRebus[3,2]=[N]
m.laRebus[4,1]=4
m.laRebus[4,2]=[K]
m.laRebus[5,1]=5
m.laRebus[5,2]=[E]
m.laRebus[6,1]=6
m.laRebus[6,2]=[Y]
m.laRebus[7,1]=7
m.laRebus[7,2]=[S]
m.laRebus[8,1]=8
m.laRebus[8,2]=[H]
m.laRebus[9,1]=9
m.laRebus[9,2]=[I]
m.laRebus[10,1]=0
m.laRebus[10,2]=[P]
m.lcRetval=[]
m.lcChar=[]
FOR m.x=1 TO LEN(ALLTRIM(m.lcStringToEncode))
m.lcChar=m.laRebus[ASCAN(m.laRebus,VAL(SUBSTR(m.lcStringToEncode,x,1)),1,-1,1,8),2]
Post by Richard Kaye
m.lcRetval=m.lcRetval+m.lcChar
NEXT
IF m.tlRandom
LOCAL m.liCounter AS Integer
PRIVATE m.pcRandomChar
m.pcRandomChar=[ ]
m.liCounter=1
*!* get a bunch of values to work with which will hopefully give at
least one alpha not in monkeyship
Post by Richard Kaye
DO WHILE NOT ReturnRandom()
m.liCounter=m.liCounter+1
IF m.liCounter=10
EXIT
ENDIF
ENDDO
IF m.liCounter=10 && we went through loop 10 times and could
not get a char back
Post by Richard Kaye
m.lcRetval=[Q]+m.lcRetval
ELSE
m.lcRetval=m.pcRandomChar+m.lcRetval
ENDIF
ENDIF
RETURN m.lcRetval
ENDFUNC
FUNCTION ReturnRandom
LOCAL m.lcRandomSeed AS Character, m.lIsGood AS Boolean
*!* get a bunch of values to work with which will hopefully give at
least one alpha not in monkeyship
Post by Richard Kaye
m.lcRandomSeed=SYS(2015)+SYS(2015)+SYS(2015)+SYS(2015)
m.lIsGood=.f.
FOR m.y=LEN(m.lcRandomSeed) TO 2 STEP -1 && don't need to check
first char in sys(2015)
Post by Richard Kaye
IF ISALPHA(SUBSTR(m.lcRandomSeed,y,1)) AND NOT
UPPER(SUBSTR(m.lcRandomSeed,y,1))$[MONKEYSHIP]
Post by Richard Kaye
m.pcRandomChar=SUBSTR(m.lcRandomSeed,y,1)
m.lIsGood=.t.
EXIT
ELSE
m.lIsGood=.f.
ENDIF
NEXT
RETURN m.lIsGood
ENDFUNC
--
rk
-----Original Message-----
Cazabon
Post by Richard Kaye
Sent: Wednesday, October 10, 2018 3:25 PM
Subject: Numbering Scheme
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of the
day (read that as check for stealing) when checking the various parcels
received for the tickets issued (they keep a copy of the ticket issued to
their customer and at the end of the day sort them sequentially and read
the numbers off the tickets to ensure they match the parcels). They are now
not wanting the number printed on the ticket as their competitors may be
able to get an idea from the sequential numbers how much business they are
doing (by getting a ticket early in the morning and then one ate in the
afternoon).
Post by Richard Kaye
So, they have asked me to come up with a solution and I must admit that
I am coming up blank.
Post by Richard Kaye
Any ideas?
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/CAJidMY+***@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Frank Cazabon
2018-10-11 18:38:52 UTC
Permalink
They have that already. This is a physical count process to avoid theft. They deal in lending money for gold and have to be paranoid.
Post by Stephen Russell
Why not make a dashboard that has a Count for the Day on it. If you have
really simple people this might work?
Post by Frank Cazabon
Thanks, Obscuring the number is not a problem, but I think they want
to
Post by Frank Cazabon
be able to read the number off the ticket at the end of the day in
sequential order and I don't see how I can come up with a simple way
to
Post by Frank Cazabon
do this.
Frank.
Frank Cazabon
Post by Richard Kaye
One way is to come up with a 10 letter "word" with each letter
representing a digit. You then convert the numeric sequence to alpha
characters. And to avoid the pattern being too easily spotted, add
one or
Post by Frank Cazabon
more random characters to the final string. It's not the most robust
encryption scheme in the world but it should obscure it enough.
Here's a
Post by Frank Cazabon
bit of VFP code to do this using the non-dictionary phrase MONKEYSHIP
as
Post by Frank Cazabon
the rebus. Pass it the number to encode and optionally .t. as the
second
Post by Frank Cazabon
parameter to append a single random character at the end.
Post by Richard Kaye
**************************************
* Program: MONKEYSHIP.PRG
* Date: 05/07/2007 03:26 PM
* VFP Version: Visual FoxPro 09.00.0000.7423 for Windows
**************************************
FUNCTION MonkeyShip(m.tnStringToEncode AS Number, m.tlRandom AS
Boolean)
Post by Frank Cazabon
Post by Richard Kaye
LOCAL m.lcRetval AS Character
m.lcStringToEncode=ALLTRIM(TRANSFORM(m.tnStringToEncode,[999999999999999]))
Post by Frank Cazabon
Post by Richard Kaye
LOCAL ARRAY laRebus[10,2]
m.laRebus[1,1]=1
m.laRebus[1,2]=[M]
m.laRebus[2,1]=2
m.laRebus[2,2]=[O]
m.laRebus[3,1]=3
m.laRebus[3,2]=[N]
m.laRebus[4,1]=4
m.laRebus[4,2]=[K]
m.laRebus[5,1]=5
m.laRebus[5,2]=[E]
m.laRebus[6,1]=6
m.laRebus[6,2]=[Y]
m.laRebus[7,1]=7
m.laRebus[7,2]=[S]
m.laRebus[8,1]=8
m.laRebus[8,2]=[H]
m.laRebus[9,1]=9
m.laRebus[9,2]=[I]
m.laRebus[10,1]=0
m.laRebus[10,2]=[P]
m.lcRetval=[]
m.lcChar=[]
FOR m.x=1 TO LEN(ALLTRIM(m.lcStringToEncode))
m.lcChar=m.laRebus[ASCAN(m.laRebus,VAL(SUBSTR(m.lcStringToEncode,x,1)),1,-1,1,8),2]
Post by Frank Cazabon
Post by Richard Kaye
m.lcRetval=m.lcRetval+m.lcChar
NEXT
IF m.tlRandom
LOCAL m.liCounter AS Integer
PRIVATE m.pcRandomChar
m.pcRandomChar=[ ]
m.liCounter=1
*!* get a bunch of values to work with which will hopefully give at
least one alpha not in monkeyship
Post by Richard Kaye
DO WHILE NOT ReturnRandom()
m.liCounter=m.liCounter+1
IF m.liCounter=10
EXIT
ENDIF
ENDDO
IF m.liCounter=10 && we went through loop 10 times and
could
Post by Frank Cazabon
not get a char back
Post by Richard Kaye
m.lcRetval=[Q]+m.lcRetval
ELSE
m.lcRetval=m.pcRandomChar+m.lcRetval
ENDIF
ENDIF
RETURN m.lcRetval
ENDFUNC
FUNCTION ReturnRandom
LOCAL m.lcRandomSeed AS Character, m.lIsGood AS Boolean
*!* get a bunch of values to work with which will hopefully give at
least one alpha not in monkeyship
Post by Richard Kaye
m.lcRandomSeed=SYS(2015)+SYS(2015)+SYS(2015)+SYS(2015)
m.lIsGood=.f.
FOR m.y=LEN(m.lcRandomSeed) TO 2 STEP -1 && don't need to
check
Post by Frank Cazabon
first char in sys(2015)
Post by Richard Kaye
IF ISALPHA(SUBSTR(m.lcRandomSeed,y,1)) AND NOT
UPPER(SUBSTR(m.lcRandomSeed,y,1))$[MONKEYSHIP]
Post by Richard Kaye
m.pcRandomChar=SUBSTR(m.lcRandomSeed,y,1)
m.lIsGood=.t.
EXIT
ELSE
m.lIsGood=.f.
ENDIF
NEXT
RETURN m.lIsGood
ENDFUNC
--
rk
-----Original Message-----
Cazabon
Post by Richard Kaye
Sent: Wednesday, October 10, 2018 3:25 PM
Subject: Numbering Scheme
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of
the
Post by Frank Cazabon
day (read that as check for stealing) when checking the various
parcels
Post by Frank Cazabon
received for the tickets issued (they keep a copy of the ticket
issued to
Post by Frank Cazabon
their customer and at the end of the day sort them sequentially and
read
Post by Frank Cazabon
the numbers off the tickets to ensure they match the parcels). They
are now
Post by Frank Cazabon
not wanting the number printed on the ticket as their competitors may
be
Post by Frank Cazabon
able to get an idea from the sequential numbers how much business
they are
Post by Frank Cazabon
doing (by getting a ticket early in the morning and then one ate in
the
Post by Frank Cazabon
afternoon).
Post by Richard Kaye
So, they have asked me to come up with a solution and I must admit
that
Post by Frank Cazabon
I am coming up blank.
Post by Richard Kaye
Any ideas?
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/FFD67092-C526-4D54-BE59-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Joe Yoder
2018-10-11 18:56:12 UTC
Permalink
How about converting to base 26 and printing alpha characters (A-Z)? This
would allow easy sequencing and a simple program could convert an alpha
string to a base 10 number when needed.- Joe
Post by Frank Cazabon
They have that already. This is a physical count process to avoid theft.
They deal in lending money for gold and have to be paranoid.
On 11 October 2018 14:10:36 GMT-04:00, Stephen Russell <
Post by Stephen Russell
Why not make a dashboard that has a Count for the Day on it. If you have
really simple people this might work?
Post by Frank Cazabon
Thanks, Obscuring the number is not a problem, but I think they want
to
Post by Frank Cazabon
be able to read the number off the ticket at the end of the day in
sequential order and I don't see how I can come up with a simple way
to
Post by Frank Cazabon
do this.
Frank.
Frank Cazabon
Post by Richard Kaye
One way is to come up with a 10 letter "word" with each letter
representing a digit. You then convert the numeric sequence to alpha
characters. And to avoid the pattern being too easily spotted, add
one or
Post by Frank Cazabon
more random characters to the final string. It's not the most robust
encryption scheme in the world but it should obscure it enough.
Here's a
Post by Frank Cazabon
bit of VFP code to do this using the non-dictionary phrase MONKEYSHIP
as
Post by Frank Cazabon
the rebus. Pass it the number to encode and optionally .t. as the
second
Post by Frank Cazabon
parameter to append a single random character at the end.
Post by Richard Kaye
**************************************
* Program: MONKEYSHIP.PRG
* Date: 05/07/2007 03:26 PM
* VFP Version: Visual FoxPro 09.00.0000.7423 for Windows
**************************************
FUNCTION MonkeyShip(m.tnStringToEncode AS Number, m.tlRandom AS
Boolean)
Post by Frank Cazabon
Post by Richard Kaye
LOCAL m.lcRetval AS Character
m.lcStringToEncode=ALLTRIM(TRANSFORM(m.tnStringToEncode,[999999999999999]))
Post by Frank Cazabon
Post by Richard Kaye
LOCAL ARRAY laRebus[10,2]
m.laRebus[1,1]=1
m.laRebus[1,2]=[M]
m.laRebus[2,1]=2
m.laRebus[2,2]=[O]
m.laRebus[3,1]=3
m.laRebus[3,2]=[N]
m.laRebus[4,1]=4
m.laRebus[4,2]=[K]
m.laRebus[5,1]=5
m.laRebus[5,2]=[E]
m.laRebus[6,1]=6
m.laRebus[6,2]=[Y]
m.laRebus[7,1]=7
m.laRebus[7,2]=[S]
m.laRebus[8,1]=8
m.laRebus[8,2]=[H]
m.laRebus[9,1]=9
m.laRebus[9,2]=[I]
m.laRebus[10,1]=0
m.laRebus[10,2]=[P]
m.lcRetval=[]
m.lcChar=[]
FOR m.x=1 TO LEN(ALLTRIM(m.lcStringToEncode))
m.lcChar=m.laRebus[ASCAN(m.laRebus,VAL(SUBSTR(m.lcStringToEncode,x,1)),1,-1,1,8),2]
Post by Frank Cazabon
Post by Richard Kaye
m.lcRetval=m.lcRetval+m.lcChar
NEXT
IF m.tlRandom
LOCAL m.liCounter AS Integer
PRIVATE m.pcRandomChar
m.pcRandomChar=[ ]
m.liCounter=1
*!* get a bunch of values to work with which will hopefully give at
least one alpha not in monkeyship
Post by Richard Kaye
DO WHILE NOT ReturnRandom()
m.liCounter=m.liCounter+1
IF m.liCounter=10
EXIT
ENDIF
ENDDO
IF m.liCounter=10 && we went through loop 10 times and
could
Post by Frank Cazabon
not get a char back
Post by Richard Kaye
m.lcRetval=[Q]+m.lcRetval
ELSE
m.lcRetval=m.pcRandomChar+m.lcRetval
ENDIF
ENDIF
RETURN m.lcRetval
ENDFUNC
FUNCTION ReturnRandom
LOCAL m.lcRandomSeed AS Character, m.lIsGood AS Boolean
*!* get a bunch of values to work with which will hopefully give at
least one alpha not in monkeyship
Post by Richard Kaye
m.lcRandomSeed=SYS(2015)+SYS(2015)+SYS(2015)+SYS(2015)
m.lIsGood=.f.
FOR m.y=LEN(m.lcRandomSeed) TO 2 STEP -1 && don't need to
check
Post by Frank Cazabon
first char in sys(2015)
Post by Richard Kaye
IF ISALPHA(SUBSTR(m.lcRandomSeed,y,1)) AND NOT
UPPER(SUBSTR(m.lcRandomSeed,y,1))$[MONKEYSHIP]
Post by Richard Kaye
m.pcRandomChar=SUBSTR(m.lcRandomSeed,y,1)
m.lIsGood=.t.
EXIT
ELSE
m.lIsGood=.f.
ENDIF
NEXT
RETURN m.lIsGood
ENDFUNC
--
rk
-----Original Message-----
Cazabon
Post by Richard Kaye
Sent: Wednesday, October 10, 2018 3:25 PM
Subject: Numbering Scheme
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of
the
Post by Frank Cazabon
day (read that as check for stealing) when checking the various
parcels
Post by Frank Cazabon
received for the tickets issued (they keep a copy of the ticket
issued to
Post by Frank Cazabon
their customer and at the end of the day sort them sequentially and
read
Post by Frank Cazabon
the numbers off the tickets to ensure they match the parcels). They
are now
Post by Frank Cazabon
not wanting the number printed on the ticket as their competitors may
be
Post by Frank Cazabon
able to get an idea from the sequential numbers how much business
they are
Post by Frank Cazabon
doing (by getting a ticket early in the morning and then one ate in
the
Post by Frank Cazabon
afternoon).
Post by Richard Kaye
So, they have asked me to come up with a solution and I must admit
that
Post by Frank Cazabon
I am coming up blank.
Post by Richard Kaye
Any ideas?
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/CABQeDnWzgr_WaAdkCxs+***@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Frank Cazabon
2018-10-12 13:35:14 UTC
Permalink
Thanks for the suggestion

Frank.

Frank Cazabon
Post by Joe Yoder
How about converting to base 26 and printing alpha characters (A-Z)? This
would allow easy sequencing and a simple program could convert an alpha
string to a base 10 number when needed.- Joe
Post by Frank Cazabon
They have that already. This is a physical count process to avoid theft.
They deal in lending money for gold and have to be paranoid.
On 11 October 2018 14:10:36 GMT-04:00, Stephen Russell <
Post by Stephen Russell
Why not make a dashboard that has a Count for the Day on it. If you have
really simple people this might work?
Post by Frank Cazabon
Thanks, Obscuring the number is not a problem, but I think they want
to
Post by Frank Cazabon
be able to read the number off the ticket at the end of the day in
sequential order and I don't see how I can come up with a simple way
to
Post by Frank Cazabon
do this.
Frank.
Frank Cazabon
Post by Richard Kaye
One way is to come up with a 10 letter "word" with each letter
representing a digit. You then convert the numeric sequence to alpha
characters. And to avoid the pattern being too easily spotted, add
one or
Post by Frank Cazabon
more random characters to the final string. It's not the most robust
encryption scheme in the world but it should obscure it enough.
Here's a
Post by Frank Cazabon
bit of VFP code to do this using the non-dictionary phrase MONKEYSHIP
as
Post by Frank Cazabon
the rebus. Pass it the number to encode and optionally .t. as the
second
Post by Frank Cazabon
parameter to append a single random character at the end.
Post by Richard Kaye
**************************************
* Program: MONKEYSHIP.PRG
* Date: 05/07/2007 03:26 PM
* VFP Version: Visual FoxPro 09.00.0000.7423 for Windows
**************************************
FUNCTION MonkeyShip(m.tnStringToEncode AS Number, m.tlRandom AS
Boolean)
Post by Frank Cazabon
Post by Richard Kaye
LOCAL m.lcRetval AS Character
m.lcStringToEncode=ALLTRIM(TRANSFORM(m.tnStringToEncode,[999999999999999]))
Post by Frank Cazabon
Post by Richard Kaye
LOCAL ARRAY laRebus[10,2]
m.laRebus[1,1]=1
m.laRebus[1,2]=[M]
m.laRebus[2,1]=2
m.laRebus[2,2]=[O]
m.laRebus[3,1]=3
m.laRebus[3,2]=[N]
m.laRebus[4,1]=4
m.laRebus[4,2]=[K]
m.laRebus[5,1]=5
m.laRebus[5,2]=[E]
m.laRebus[6,1]=6
m.laRebus[6,2]=[Y]
m.laRebus[7,1]=7
m.laRebus[7,2]=[S]
m.laRebus[8,1]=8
m.laRebus[8,2]=[H]
m.laRebus[9,1]=9
m.laRebus[9,2]=[I]
m.laRebus[10,1]=0
m.laRebus[10,2]=[P]
m.lcRetval=[]
m.lcChar=[]
FOR m.x=1 TO LEN(ALLTRIM(m.lcStringToEncode))
m.lcChar=m.laRebus[ASCAN(m.laRebus,VAL(SUBSTR(m.lcStringToEncode,x,1)),1,-1,1,8),2]
Post by Frank Cazabon
Post by Richard Kaye
m.lcRetval=m.lcRetval+m.lcChar
NEXT
IF m.tlRandom
LOCAL m.liCounter AS Integer
PRIVATE m.pcRandomChar
m.pcRandomChar=[ ]
m.liCounter=1
*!* get a bunch of values to work with which will hopefully give at
least one alpha not in monkeyship
Post by Richard Kaye
DO WHILE NOT ReturnRandom()
m.liCounter=m.liCounter+1
IF m.liCounter=10
EXIT
ENDIF
ENDDO
IF m.liCounter=10 && we went through loop 10 times and
could
Post by Frank Cazabon
not get a char back
Post by Richard Kaye
m.lcRetval=[Q]+m.lcRetval
ELSE
m.lcRetval=m.pcRandomChar+m.lcRetval
ENDIF
ENDIF
RETURN m.lcRetval
ENDFUNC
FUNCTION ReturnRandom
LOCAL m.lcRandomSeed AS Character, m.lIsGood AS Boolean
*!* get a bunch of values to work with which will hopefully give at
least one alpha not in monkeyship
Post by Richard Kaye
m.lcRandomSeed=SYS(2015)+SYS(2015)+SYS(2015)+SYS(2015)
m.lIsGood=.f.
FOR m.y=LEN(m.lcRandomSeed) TO 2 STEP -1 && don't need to
check
Post by Frank Cazabon
first char in sys(2015)
Post by Richard Kaye
IF ISALPHA(SUBSTR(m.lcRandomSeed,y,1)) AND NOT
UPPER(SUBSTR(m.lcRandomSeed,y,1))$[MONKEYSHIP]
Post by Richard Kaye
m.pcRandomChar=SUBSTR(m.lcRandomSeed,y,1)
m.lIsGood=.t.
EXIT
ELSE
m.lIsGood=.f.
ENDIF
NEXT
RETURN m.lIsGood
ENDFUNC
--
rk
-----Original Message-----
Cazabon
Post by Richard Kaye
Sent: Wednesday, October 10, 2018 3:25 PM
Subject: Numbering Scheme
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of
the
Post by Frank Cazabon
day (read that as check for stealing) when checking the various
parcels
Post by Frank Cazabon
received for the tickets issued (they keep a copy of the ticket
issued to
Post by Frank Cazabon
their customer and at the end of the day sort them sequentially and
read
Post by Frank Cazabon
the numbers off the tickets to ensure they match the parcels). They
are now
Post by Frank Cazabon
not wanting the number printed on the ticket as their competitors may
be
Post by Frank Cazabon
able to get an idea from the sequential numbers how much business
they are
Post by Frank Cazabon
doing (by getting a ticket early in the morning and then one ate in
the
Post by Frank Cazabon
afternoon).
Post by Richard Kaye
So, they have asked me to come up with a solution and I must admit
that
Post by Frank Cazabon
I am coming up blank.
Post by Richard Kaye
Any ideas?
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/1569278a-7636-799f-c209-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Alan Bourke
2018-10-12 14:48:27 UTC
Permalink
Easy for the staff to count, or difficult for the opposition to count. Pick one.
--
Alan Bourke
alanpbourke (at) fastmail (dot) fm

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/***@webmail.messagingengine.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Frank Cazabon
2018-10-12 15:09:36 UTC
Permalink
It doesn't have to be either or. I have put forward the various
suggestions to the client and will let them decide how they want it done.

Thanks to everyone for their contribution.

Frank.

Frank Cazabon
Post by Alan Bourke
Easy for the staff to count, or difficult for the opposition to count. Pick one.
_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/11c2a35c-1347-f695-9c4f-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Gene Wirchenko
2018-10-13 05:00:22 UTC
Permalink
Post by Alan Bourke
Easy for the staff to count, or difficult for the opposition to
count. Pick one.
In situations like this, aren't there supposed to be three
things with a choice of two? Especially on a Friday.

Sincerely,

Gene Wirchenko


_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/***@mtlp000084
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Vassilis Aggelakos
2018-10-10 20:07:20 UTC
Permalink
Multiply the number by 3.

Vassilis
Post by Richard Kaye
I have a client who issues tickets in numerical sequence (it's a pawnshop). The sequence helps them balance things back at the end of the day (read that as check for stealing) when checking the various parcels received for the tickets issued (they keep a copy of the ticket issued to their customer and at the end of the day sort them sequentially and read the numbers off the tickets to ensure they match the parcels). They are now not wanting the number printed on the ticket as their competitors may be able to get an idea from the sequential numbers how much business they are doing (by getting a ticket early in the morning and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit that I am coming up blank.
Any ideas?
--
Frank.
Frank Cazabon
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/3C112AFC-8990-4E6E-A54F-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Tracy Pearson
2018-10-10 21:20:00 UTC
Permalink
Do you have
1) a specific report for the customer ticket
2) can you can add a sequential number on to the above for the internal
copy?
3) a parcel label that can have a ticket number and the sequential number
on it?

It would mean the two people would need to come back and get the parcel, and
see the label to try to figure out the numbers.


-----Original Message-----
From: ProfoxTech [mailto:profoxtech-***@leafe.com] On Behalf Of Frank
Cazabon
Sent: Wednesday, October 10, 2018 3:25 PM
To: ***@leafe.com
Subject: Numbering Scheme

I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of the
day (read that as check for stealing) when checking the various parcels
received for the tickets issued (they keep a copy of the ticket issued
to their customer and at the end of the day sort them sequentially and
read the numbers off the tickets to ensure they match the parcels). They
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers how
much business they are doing (by getting a ticket early in the morning
and then one ate in the afternoon).

So, they have asked me to come up with a solution and I must admit that
I am coming up blank.

Any ideas?
--
Frank.

Frank Cazabon


[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/001101d460df$011fc5e0$035f51a0$@powerchurch.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Frank Cazabon
2018-10-11 15:00:36 UTC
Permalink
This is for their end of day process and they want to be able to count
the number of tickets and match the number of parcels and then be able
to match them in sequential order. They also store the parcels in a
vault in sequential order so that when the customer comes back for their
parcel it's easy to find.

The tickets are printed on dot matrix printers using carbon copy paper.

The only way I can see this working is to have an internal sequential
number and an external random one. At the end of the day they'll have to
print out a report with the internal and external numbers so they can do
their matching/double check. The parcel will have just the internal
number on it. When the customer comes back they'll have to look up the
parcel on the PC using the external number and then get the internal
number to get the package from the vault.

Maybe they'll be happy with this.

Frank.

Frank Cazabon
Post by Tracy Pearson
Do you have
1) a specific report for the customer ticket
2) can you can add a sequential number on to the above for the internal
copy?
3) a parcel label that can have a ticket number and the sequential number
on it?
It would mean the two people would need to come back and get the parcel, and
see the label to try to figure out the numbers.
-----Original Message-----
Cazabon
Sent: Wednesday, October 10, 2018 3:25 PM
Subject: Numbering Scheme
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of the
day (read that as check for stealing) when checking the various parcels
received for the tickets issued (they keep a copy of the ticket issued
to their customer and at the end of the day sort them sequentially and
read the numbers off the tickets to ensure they match the parcels). They
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers how
much business they are doing (by getting a ticket early in the morning
and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit that
I am coming up blank.
Any ideas?
_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/b2c12b9d-c52f-45d8-4344-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Paul H. Tarver
2018-10-10 22:18:49 UTC
Permalink
How about a simple character substitution routine like this:

Original # String: '0123456789'
Substitution String : '2546890313'

Create a simple routine to take a number as a string, do a character by
character substitution and return the "encoded" Ticket #

Ticket #: 12345 would be printed on the ticket as 54689
Ticket #: 12346 would be printed on the ticket as 54680

If the displayed digit string is randomly ordered none of the ticket numbers
would make any sense if a morning ticket was compared to an afternoon
ticket.

Then you could "decode" the ticket # when the user entered the ticket number
to regenerate the original ticket number. This would also help prevent
counterfeit tickets a bit as well, I would think.

This could even be expanded to include some alpha characters in the Ticket #
if you wanted to add a prefix or suffix to the Ticket #.

Paul H. Tarver
Email: ***@tpcqpc.com


-----Original Message-----
From: ProfoxTech [mailto:profoxtech-***@leafe.com] On Behalf Of Frank
Cazabon
Sent: Wednesday, October 10, 2018 2:25 PM
To: ***@leafe.com
Subject: Numbering Scheme

I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of the
day (read that as check for stealing) when checking the various parcels
received for the tickets issued (they keep a copy of the ticket issued
to their customer and at the end of the day sort them sequentially and
read the numbers off the tickets to ensure they match the parcels). They
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers how
much business they are doing (by getting a ticket early in the morning
and then one ate in the afternoon).

So, they have asked me to come up with a solution and I must admit that
I am coming up blank.

Any ideas?
--
Frank.

Frank Cazabon


[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/01f601d460e7$38810b40$a98321c0$@tpcqpc.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Frank Cazabon
2018-10-11 15:07:54 UTC
Permalink
That's along the lines of what I think needs to be done but not sure if
my client will be happy with it. Only way to find out is to ask.

Frank.

Frank Cazabon
Post by Paul H. Tarver
Original # String: '0123456789'
Substitution String : '2546890313'
Create a simple routine to take a number as a string, do a character by
character substitution and return the "encoded" Ticket #
Ticket #: 12345 would be printed on the ticket as 54689
Ticket #: 12346 would be printed on the ticket as 54680
If the displayed digit string is randomly ordered none of the ticket numbers
would make any sense if a morning ticket was compared to an afternoon
ticket.
Then you could "decode" the ticket # when the user entered the ticket number
to regenerate the original ticket number. This would also help prevent
counterfeit tickets a bit as well, I would think.
This could even be expanded to include some alpha characters in the Ticket #
if you wanted to add a prefix or suffix to the Ticket #.
Paul H. Tarver
-----Original Message-----
Cazabon
Sent: Wednesday, October 10, 2018 2:25 PM
Subject: Numbering Scheme
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of the
day (read that as check for stealing) when checking the various parcels
received for the tickets issued (they keep a copy of the ticket issued
to their customer and at the end of the day sort them sequentially and
read the numbers off the tickets to ensure they match the parcels). They
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers how
much business they are doing (by getting a ticket early in the morning
and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit that
I am coming up blank.
Any ideas?
_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/f91308c4-5de4-63ba-9662-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Mike
2018-10-10 22:19:13 UTC
Permalink
Print the sequential number using a barcode font. If a customer has a
barcode scanner, they can "see" the number, but they'd have to be
looking pretty hard. Meanwhile, an $80 barcode scanner (USB connection)
on the office computer would let them read the sequential number.

Mike Copeland
Post by Frank Cazabon
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of
the day (read that as check for stealing) when checking the various
parcels received for the tickets issued (they keep a copy of the
ticket issued to their customer and at the end of the day sort them
sequentially and read the numbers off the tickets to ensure they match
the parcels). They are now not wanting the number printed on the
ticket as their competitors may be able to get an idea from the
sequential numbers how much business they are doing (by getting a
ticket early in the morning and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit
that I am coming up blank.
Any ideas?
_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/b87f1152-7a6d-6fbf-fd7c-***@ggisoft.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Paul Hill
2018-10-11 08:11:20 UTC
Permalink
Post by Mike
Print the sequential number using a barcode font. If a customer has a
barcode scanner, they can "see" the number, but they'd have to be
looking pretty hard.
Or they could just use their phone.
--
Paul

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/CADwx0+Luxkrb_3-yowKV+QNgXQ=+***@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Mike
2018-10-11 08:13:01 UTC
Permalink
True, but they would need several invoices to compare...which means
they're "looking" for a sequence and not just "noticing".

Mike
Post by Paul Hill
Post by Mike
Print the sequential number using a barcode font. If a customer has a
barcode scanner, they can "see" the number, but they'd have to be
looking pretty hard.
Or they could just use their phone.
_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/fa869fbc-a069-4a42-740d-***@ggisoft.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Frank Cazabon
2018-10-11 15:08:55 UTC
Permalink
They actually have barcodes on the ticket but never use the scanners to
actually read them, they just read the number (printed below the bar code).

Frank.

Frank Cazabon
Post by Mike
Print the sequential number using a barcode font. If a customer has a
barcode scanner, they can "see" the number, but they'd have to be
looking pretty hard. Meanwhile, an $80 barcode scanner (USB
connection) on the office computer would let them read the sequential
number.
Mike Copeland
Post by Frank Cazabon
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of
the day (read that as check for stealing) when checking the various
parcels received for the tickets issued (they keep a copy of the
ticket issued to their customer and at the end of the day sort them
sequentially and read the numbers off the tickets to ensure they
match the parcels). They are now not wanting the number printed on
the ticket as their competitors may be able to get an idea from the
sequential numbers how much business they are doing (by getting a
ticket early in the morning and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit
that I am coming up blank.
Any ideas?
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/571b3b0e-f47a-6ee4-7452-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Charles Hart Enzer, M.D.
2018-10-10 22:45:54 UTC
Permalink
How about table with two columns in an Array:

- Column One is sequential by one
- Column Two is generated by Random Number Generator with IF THEN
- If Random Number Exists, reGenerate
- Assign numbers to items from Column Two

Instead of an Array, create a Table to be used -- estimating length for
next five to ten years



*Shai / שי **Charles Hart Enzer, MD(Ohio, USA), FAACAP*
*Aliyah <https://en.wikipedia.org/wiki/Aliyah>: Cincinnati to Jerusalem
<http://www.gojerusalem.com/items/263/German-Colony/>'s German Colony
<https://en.wikipedia.org/wiki/German_Colony,_Jerusalem> May, 2017*



*Volunteer Associate Professor of PsychiatryUniversity of Cincinnati
Medical CenterWebSite: **EnzerMD.com <http://EnzerMD.com>*
*Publications* <http://www.enzermd.com/CV.html#Publications>

*If a problem has no solution, *
*it may not be a problem, *
*but a fact -- not to be solved, *
*but to be coped with over time*

-- Shimon Peres, Ninth President of Israel
Post by Frank Cazabon
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of the
day (read that as check for stealing) when checking the various parcels
received for the tickets issued (they keep a copy of the ticket issued
to their customer and at the end of the day sort them sequentially and
read the numbers off the tickets to ensure they match the parcels). They
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers how
much business they are doing (by getting a ticket early in the morning
and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit that
I am coming up blank.
Any ideas?
--
Frank.
Frank Cazabon
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/CAFSdja2EKcsn-OHttQPy4B5sSMTQB-***@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to
Frank Cazabon
2018-10-11 15:10:50 UTC
Permalink
Thanks

Frank.

Frank Cazabon
Post by Charles Hart Enzer, M.D.
- Column One is sequential by one
- Column Two is generated by Random Number Generator with IF THEN
- If Random Number Exists, reGenerate
- Assign numbers to items from Column Two
Instead of an Array, create a Table to be used -- estimating length for
next five to ten years
*Shai / שי **Charles Hart Enzer, MD(Ohio, USA), FAACAP*
*Aliyah <https://en.wikipedia.org/wiki/Aliyah>: Cincinnati to Jerusalem
<http://www.gojerusalem.com/items/263/German-Colony/>'s German Colony
<https://en.wikipedia.org/wiki/German_Colony,_Jerusalem> May, 2017*
*Volunteer Associate Professor of PsychiatryUniversity of Cincinnati
Medical CenterWebSite: **EnzerMD.com <http://EnzerMD.com>*
*Publications* <http://www.enzermd.com/CV.html#Publications>
*If a problem has no solution, *
*it may not be a problem, *
*but a fact -- not to be solved, *
*but to be coped with over time*
-- Shimon Peres, Ninth President of Israel
Post by Frank Cazabon
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of the
day (read that as check for stealing) when checking the various parcels
received for the tickets issued (they keep a copy of the ticket issued
to their customer and at the end of the day sort them sequentially and
read the numbers off the tickets to ensure they match the parcels). They
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers how
much business they are doing (by getting a ticket early in the morning
and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit that
I am coming up blank.
Any ideas?
--
Frank.
Frank Cazabon
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/1b08946e-cb70-d7a5-7d3e-***@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for
Koen Piller
2018-10-11 15:19:47 UTC
Permalink
What I would do: at a 3digt random prefix and a 2 digit random suffix to
your seq number of fixed lengte.
So you will end up with something like 45600198
67000261
45800377
Aso
If you print the list like this you will see at one glance the seq number
but your competetiors are not Abel to see that
68118555
Means you have 185 as seq number.
I have worked succesfully for years with this system
Koen
Post by Frank Cazabon
I have a client who issues tickets in numerical sequence (it's a
pawnshop). The sequence helps them balance things back at the end of the
day (read that as check for stealing) when checking the various parcels
received for the tickets issued (they keep a copy of the ticket issued
to their customer and at the end of the day sort them sequentially and
read the numbers off the tickets to ensure they match the parcels). They
are now not wanting the number printed on the ticket as their
competitors may be able to get an idea from the sequential numbers how
much business they are doing (by getting a ticket early in the morning
and then one ate in the afternoon).
So, they have asked me to come up with a solution and I must admit that
I am coming up blank.
Any ideas?
--
Frank.
Frank Cazabon
[excessive quoting removed by server]

_______________________________________________
Post Messages to: ***@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/CACUu1SvEZkVtCfFwW9trj6+TCXVK=SJO8vhtzkfyPEFqNS-***@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.
Loading...