getFishTicketNumbers002()
Reserves and returns one or more fish ticket numbers in the database for your user. Other users will not be given these numbers in their requests as they are reserved for your use. This is provided to help preserve id uniqueness of these fish ticket numbers.
All eLandings landings reports have one or more fish_ticket_numbers associated. There is one fish_ticket_number per CFEC permit holder on the landing report. Before assigning a fish_ticket_number to a new report, eLandings and all third-party users need to verify that the fish_ticket_numbers that they assign are not already in use. Otherwise, previous report data will be lost and new report data may be corrupted.
The original getFishTicketNumbers() registered your request associated with a operation id and then returned the same list of numbers at every request. As a result users had to scan the list and remove any numbers that had previously been used. The getFishTicketNumbers002() behaves very similarly to getFishTicketNumbers(), in that it reserves numbers and assocates them with a give operation id and will return the same list of numbers on subsequent requests. However, unlike getFishTicketNumbers(), the getFishTicketNumbers002() removes any numbers that have been used on unsubmitted reports, deleted reports or submitted reports.
The getFishTicketNumbers002() takes five arguments:
- String Userid – i.e "amarx"
- String password – i.e. "A_marx"
- String schemaVersionNumber – i.e. "2.1"
- String operationId - i.e. "1"
- String numberOfNumbersRequested - i.e. "10" or null
Each user is associated with one or more operation ID's. You can find a legal operation ID for a user by calling the web service getUserInfo() and examining the list of returned operations associated with the user profile.
If we pass in a numberOfNumbersRequested=10, we are asking for 10 new fish_ticket_numbers from the database that have never been used and will be reserved for our use. If null is passed in for numberOfNumbersRequested, the system will return all previously reserved tickets without adding new numbers to the list.
String xml = svc.getFishTicketNumbers002("amarx", "A_marx", "2.3", "1", null);
This webservice call will do the following steps
- Get any unsubmitted reports associated with proc codes associated with the operationId passed in by the user.
- Get all fish ticket numbers used in the unsubmitted reports.
- Remove all fish tickets numbers from the fish ticket numbers reserved list that appear on the unsubmitted reports.
- Remove all fish ticket numbers from the fish ticket numbers reserved list that appear on deleted or submitted reports.
- Return fish ticket numbers found in the fish ticket numbers reserved list.
Please note that it is much more difficult to find the fish ticket numbers on unsubmitted reports due to our database structure than it is to find fish ticket numbers on submitted reports. Also note that these steps are labor intensive. The webservice offten takes a long time to process the requests.
String xml = svc.getFishTicketNumbers002("prodcrabs", "P_rodcrabs", "2.1", "1", 1);
This web service all will do steps 1-5 and then reserve one additional fish ticket number in the fish ticket numbers reserved list. All reserved numbers are then returned to the user.
Image that we run the webservice call
String xml = svc.getFishTicketNumbers002("amarx", "A_marx", "2.3", "1181", null);
We might get back a list of reserved numbers:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <number_info> <schema_version>2.3</schema_version> <fish_ticket_number>E06 000071</fish_ticket_number> <fish_ticket_number>E06 000089</fish_ticket_number> <fish_ticket_number>E06 000093</fish_ticket_number> <fish_ticket_number>E06 000145</fish_ticket_number> <fish_ticket_number>E06 000151</fish_ticket_number> <fish_ticket_number>E12 200773</fish_ticket_number> <fish_ticket_number>E12 200775</fish_ticket_number> <fish_ticket_number>E12 200777</fish_ticket_number> <fish_ticket_number>E12 200778</fish_ticket_number> <fish_ticket_number>E12 200779</fish_ticket_number> <fish_ticket_number>I08 043411</fish_ticket_number> <fish_ticket_number>I08 043412</fish_ticket_number> <fish_ticket_number>I08 043413</fish_ticket_number> <fish_ticket_number>I08 043414</fish_ticket_number> <fish_ticket_number>I08 043415</fish_ticket_number> <fish_ticket_number>I08 043416</fish_ticket_number> <fish_ticket_number>I08 043417</fish_ticket_number> <fish_ticket_number>I08 043418</fish_ticket_number> <fish_ticket_number>I08 043419</fish_ticket_number> <fish_ticket_number>I08 043420</fish_ticket_number> <fish_ticket_number>I08 043421</fish_ticket_number> <fish_ticket_number>I08 043422</fish_ticket_number> <fish_ticket_number>I08 043423</fish_ticket_number> <fish_ticket_number>I08 043424</fish_ticket_number> <fish_ticket_number>I08 043425</fish_ticket_number> <fish_ticket_number>I08 043426</fish_ticket_number> <fish_ticket_number>I08 043427</fish_ticket_number> <fish_ticket_number>I08 043428</fish_ticket_number> <fish_ticket_number>I08 043429</fish_ticket_number> <fish_ticket_number>I08 043430</fish_ticket_number> <fish_ticket_number>I08 043431</fish_ticket_number> <fish_ticket_number>I08 043432</fish_ticket_number> <fish_ticket_number>I08 043433</fish_ticket_number> <fish_ticket_number>I08 043434</fish_ticket_number> </number_info>
Image that after reserving these numbers, the user uses 10 of the reserved numbers
After the tickets were reserved, 5 tickets were used on submitted reports
- E06 000071
- E06 000089
- E06 000093
- E06 000145
- E06 000151
After the tickets were reserved, 5 tickets were used on unsubmitted reports
- E12 200773
- E12 200775
- E12 200777
- E12 200778
- E12 200779
Now if we run the webservice call again, the webservice should detect that these tickets have been used and return the list minus the used numbers:
String xml = svc.getFishTicketNumbers002("amarx", "A_marx", "2.3", "1181", null);
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <number_info> <schema_version>2.3</schema_version> <fish_ticket_number>I08 043411</fish_ticket_number> <fish_ticket_number>I08 043412</fish_ticket_number> <fish_ticket_number>I08 043413</fish_ticket_number> <fish_ticket_number>I08 043414</fish_ticket_number> <fish_ticket_number>I08 043415</fish_ticket_number> <fish_ticket_number>I08 043416</fish_ticket_number> <fish_ticket_number>I08 043417</fish_ticket_number> <fish_ticket_number>I08 043418</fish_ticket_number> <fish_ticket_number>I08 043419</fish_ticket_number> <fish_ticket_number>I08 043420</fish_ticket_number> <fish_ticket_number>I08 043421</fish_ticket_number> <fish_ticket_number>I08 043422</fish_ticket_number> <fish_ticket_number>I08 043423</fish_ticket_number> <fish_ticket_number>I08 043424</fish_ticket_number> <fish_ticket_number>I08 043425</fish_ticket_number> <fish_ticket_number>I08 043426</fish_ticket_number> <fish_ticket_number>I08 043427</fish_ticket_number> <fish_ticket_number>I08 043428</fish_ticket_number> <fish_ticket_number>I08 043429</fish_ticket_number> <fish_ticket_number>I08 043430</fish_ticket_number> <fish_ticket_number>I08 043431</fish_ticket_number> <fish_ticket_number>I08 043432</fish_ticket_number> <fish_ticket_number>I08 043433</fish_ticket_number> <fish_ticket_number>I08 043434</fish_ticket_number> </number_info>
If we call the same method and request one more reserved number, we will get back the list plus one new number
String xml = svc.getFishTicketNumbers002("amarx", "A_marx", "2.3", "1181", 1);
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <number_info> <schema_version>2.3</schema_version> <fish_ticket_number>I08 043411</fish_ticket_number> <fish_ticket_number>I08 043412</fish_ticket_number> <fish_ticket_number>I08 043413</fish_ticket_number> <fish_ticket_number>I08 043414</fish_ticket_number> <fish_ticket_number>I08 043415</fish_ticket_number> <fish_ticket_number>I08 043416</fish_ticket_number> <fish_ticket_number>I08 043417</fish_ticket_number> <fish_ticket_number>I08 043418</fish_ticket_number> <fish_ticket_number>I08 043419</fish_ticket_number> <fish_ticket_number>I08 043420</fish_ticket_number> <fish_ticket_number>I08 043421</fish_ticket_number> <fish_ticket_number>I08 043422</fish_ticket_number> <fish_ticket_number>I08 043423</fish_ticket_number> <fish_ticket_number>I08 043424</fish_ticket_number> <fish_ticket_number>I08 043425</fish_ticket_number> <fish_ticket_number>I08 043426</fish_ticket_number> <fish_ticket_number>I08 043427</fish_ticket_number> <fish_ticket_number>I08 043428</fish_ticket_number> <fish_ticket_number>I08 043429</fish_ticket_number> <fish_ticket_number>I08 043430</fish_ticket_number> <fish_ticket_number>I08 043431</fish_ticket_number> <fish_ticket_number>I08 043432</fish_ticket_number> <fish_ticket_number>I08 043433</fish_ticket_number> <fish_ticket_number>I08 043434</fish_ticket_number> <fish_ticket_number>I12 867459</fish_ticket_number> </number_info>
The list now has
I12 867459