Limiting the number of available records in a table, and recycling/reusing them...?

If you really intend for VDS codes to apply to model name (ie, corolla) then we need to do a little restructuring.

Sorry, apparently I was typing faster than I could read. Having a series of VDSs related to each combination of model name and year is fine.

Now, the year problem is fixed, but the VDS is still coming up blank...

[edit]

I suppose this is because I made the mistake of using the ModelNameID in tblVDSModels, when I should have been referencing ModelID. I will fix this now... Might take a little while

[edit edit]

OK, so it would seem that I truly have my off days. I just remembered looking at the tables, that I hadn't finished entering all the data in tblVDSModels. I have another 600 or so records to add.
 
Last edited:
Glad you have it sorted now. I had wondered if that was what had happened in your vdsmodels table.
 
Not quite sure why you're surprised. Surprised I understand it? Surprised I screwed it up? Surprised I can articulate a concept in less than three chapters of a novel? ;)
Craig, I am SURPRISED because I have seen very few explanations that actually EXPLAIN something!!! Kudos to you for offering what many people don't have the guts to do (they certainly have the time, they're just lazy bums)!
 
I dunno Adam. I think many regulars here have patiently explained most things incredibly well in many of their posts. Some that leap to mind as exceptional examples of this over time include The_Doc_Man, Pat_Hartman, Rural_Guy, OldSoftBoss, BobLarson (not an exhaustive list). I owe much of my understanding to their patient explanations to various posters.

I think part of the reason many questions get the shortest possible response instead of the full explanation stems from the repetitive nature of many of the questions posted. After you've answered the same question dozens of times, and have taken the time to explain it, it gets frustrating to repeat yourself ad nauseum. The information has already been posted....new users have only to search and they can learn what they need to know relatively easily. It's difficult to stay motivated to write it all down again (it takes a lot of time and careful choice of words to get it right and also be understandable to someone lacking the relevant jargon).

I try to be patient and explain things, or at least give the questioner some key words or phrases to search for, because I remember how clueless I was originally about which words to search for. But the corollory to that is that I can't spread myself around as much as I could if I didn't take the time to explain (I'm also not a fast typist). I also do it, where possible, to try to reduce the load on some of the true forum gurus who have the ability to answer much more difficult questions when they arise if they're not burned out from answering the basics over and over.

I am constantly amazed and awed at the post counts of some of the most helpful folks on this forum. That they still take any time to respond to some of the questions they do is a testament to their good will and endurance.
 
Well, thank you, from those outstanding people to you (I am saying this on their behalf).

But, "professionalism" ignores "repetitiveness annoyance" and cuts to the chase most of the time. Good people take the sh** and don't complain about it, but rather, get used to it, and it some cases, make a good time out of it! I guess I should feel fortunate that I am still young enough not to get as annoyed as some people that have been in this racket for a million years?

But then again, I'm not that young...soooooo....how do you explain what I do around here??

Answer that genius boy! :D :D :D
 
But, "professionalism" ignores "repetitiveness annoyance"

Professionals gets paid to do that. People contributing to this forum are unpaid volunteers in this setting.

how do you explain what I do around here??

I wouldn't presume to try ;)
 
Craig,

I am hoping to be able to access past SETR information in the future. This is including department code, line numbers, quantities, etc. What would you suggest as the best way for going about this?

In the previous system, the SETR table had a yes/no field for whether the SETR was active or not. I took a look in the global modules that you wrote, and I see where line numbers are assigned, but I couldn't find anywhere in the code where they become available again (after quantity or date conditions are met).

[Edit] I took out this part as I have decided to keep the invoicing db seperate.

Thanks for your help!
 
Last edited:
Colin,

Line numbers are not assigned until you 'export' the SETR to the Warantee folks. Once assigned, line numbers of SETRs are stored in tblSETRModelParts. They are not deleted when a SETR expires (but they do become 'available' again after the lag period). So, if you ever want to see line numbers of expired SETR's then just look them up from the table. QED.

Why, exactly, you'd want to do this escapes me since line numbers are reusable and have no meaning once the SETR has expired. But as long as I get that prius, what do I care? ;)


for assigning vendor invoices

I never designed this db with vendor invoices in mind. This is something you've added on so it's hard for me to comment on. Also, I note there's a lot of new queries in the db that do not line up with the table names in this db and reference some fields that do not exist in this db (eg, qryActive, qryExpenses etc). Why are you adding all this stuff when none of it is necessary to achieve the goals you stated the db was to achieve? In any case, seems to me like you've imported queries from your old db into this one. You need to go through each of these and fix them so that they reference what they're intended to. Otherwise delete them as they only make it harder to figure out what is going on.

I also note that some of the queries I originally built now have missing references because you seem to have changed some table names etc. This will foul things up as those queries were all used at various points along the way. For example, the qryLineNumbers_AvailableNumbersNow has such an error. These must be fixed for the code to work.

To get at the question of 'active' setrs you first need to define what you mean by 'active'.
Active could mean all SETRs that have not reached their expiration date.
Active could mean all SETRs that have not reached their expiration date AND have been provided to the warantee folks.
Active could mean all SETRs that have not reached their expiration date AND have been provided to the warantee folks AND have not had all their line numbers filled yet.

To get at the expiration date, make a query of tblSETR that shows SETRs where the expiration date field is greater that the current date.
To get at the question as to whether it has been given to the warantee folks, add another where clause to the query so that only SETRs with -1 in the tblSETR!SETRExported field are shown.

To get at the Line number issue make a query of tblSETRModelParts and limit the results to records where LineNumberExported = 0. Join this to your query that finds unexpired, exported SETRs etc such that only SETRs common to both are shown. That would be the list of active SETRs that would meet the third option.

Also, Colin, I note that you've placed the dangerous goods yes/no field in tblSETRModelParts instead of tblParts as I recommended. Just to be clear, this decision denormalizes your database and requires you to assign a dangerous goods value during data entry each time you add a part to a setr rather than just once when you add a new part to the db. Seems like a lot of make-work to me.

Before you do anything more please go through and fix/delete the queries that you have added, or fix the ones you have broken, or all the code that was written for you will not function.

And remember, the more you tinker with this db the further it moves away from something I understand and can provide advice on. If you insist of changing names of tables then you must make damned sure that any objects that reference those tables are updated to reflect those changes. That includes CODE and QUERIES. I do not feel inclined to debugging or fixing such problems as they are self-inflicted at this point.
 
Craig,

I almost have your book finished. I just need a couple of more posts from you, and that will do it, OK??? :D :D :D :D :D
 
Why, exactly, you'd want to do this escapes me since line numbers are reusable and have no meaning once the SETR has expired.

I was asked to make sure they would be there, just in case warranty misses one of the lines when they are shutting off a completed recovery. (We noticed this last week, as we were still receiving parts we didn't want.) I think it is more a problem with our current system (the Excel file) because we couldnt go back to check which line number it was attached to.

I never designed this db with vendor invoices in mind.

Originally I didn't either... Then because our invoicing db is associated to the SETRs in this db, I thought it would be easy to combine the two. Turns out this isn't going to work anyways, as this one we (you) built is only applicable to warranty part recoveries, where as the invoicing one is compatible for other SETRs (random recoveries, go 'n' see activities, etc.)

Why are you adding all this stuff when none of it is necessary to achieve the goals you stated the db was to achieve?

I have deleted them all. The db is back to the way it was when you originally put it together.

I also note that some of the queries I originally built now have missing references because you seem to have changed some table names etc. This will foul things up as those queries were all used at various points along the way. For example, the qryLineNumbers_AvailableNumbersNow has such an error. These must be fixed for the code to work.

I have just run all the queries, and don't seem to be getting any error messages... For example in qryLineNumbers_AvailableNumbersNow, I ran it, and it showed all line numbers from 1-999, since the db is empty right now. I don't remember changing all the table name references in the queries, but it has been a busy week...

I do not feel inclined to debugging or fixing such problems as they are self-inflicted at this point.

I would never ask you to!
 
Hmm. Perhaps I typed in the wrong query name then. Do me a favor and check qryLineNumbers_CurrentExpirationDates and qryLineNumbers_Expired. One of them was referencing LineNumbers!LineNumberID when the table is actually called tblLineNumbers. I had already fixed it in my version so I'm not sure which one it was now.

as this one we (you) built is only applicable to warranty part recoveries, where as the invoicing one is compatible for other SETRs (random recoveries, go 'n' see activities, etc.)

I'm curious. Why is this not applicable to these other recovery types?
 
qryLineNumbers_CurrentExpirationDates

It is listing all line numbers from 1-999 and expiration date as 1/1/1900.

qryLineNumbers_Expired

This one is empty. Would I be correct in assuming it didn't show any line numbers becasue 1/1/1900 is a default date, and not an "actual" value? Or is this a problem?

I'm curious. Why is this not applicable to these other recovery types?

Because they don't use the warranty system... Car might be out of warranty, or we are doing a follow-up on an old campaign or repair... etc.

The majority of recoveries we do ARE warranty based. This db will save us lots of time.

On another note, I happened to click on the Email SETR details to Warranty button on the Menu form, and I got Error 2427 (variable not defined). For some reason it doesn't like the reference
Code:
Me.Check18 = -1

This is still the name of the checkbox, and I can see in the code you wrote it is supposed to have a msgbox that tells the user there is no new SETR info to be sent. Weird.
 
This one is empty. Would I be correct in assuming it didn't show any line numbers becasue 1/1/1900 is a default date, and not an "actual" value? Or is this a problem?

No...not a problem. It uses that date as a default when no data exists. I have assumed that you won't be dealing with any SETRs expiring prior to that date ;) The reason for this is that a data must be present for sorting purposes.

Odd. I wonder why the version I have had that error and yours, presumably derived from my copy, does not.


On another note, I happened to click on the Email SETR details to Warranty button on the Menu form, and I got Error 2427 (variable not defined). For some reason it doesn't like the reference ...

Weird. My version doesn;t exhibit this error.

Maybe if you post your current version of the db I can see what's happened.
 
Because they don't use the warranty system... Car might be out of warranty, or we are doing a follow-up on an old campaign or repair... etc

If they don't use the warantee system then how does the dealer know to keep/send the parts to the third-party shipper. How does the thirdparty shipper know where to send th parts. Does the third party shipper enter those parts into the web portal system?

I'm asking because, depending on the real world situation, it might yet be possible to incorporate such SETRs with some re-jigging of the db if that would make it more useful.
 
Odd. I wonder why the version I have had that error and yours, presumably derived from my copy, does not.

Weird. My version doesn't exhibit this error.

I may done a compact & repair... this wouldn't go so far as to update changes in the nomenclature within the db would it?!?!

Here is the most recent version.
 

Attachments

If they don't use the warantee system then how does the dealer know to keep/send the parts to the third-party shipper. How does the thirdparty shipper know where to send th parts. Does the third party shipper enter those parts into the web portal system?

I'm asking because, depending on the real world situation, it might yet be possible to incorporate such SETRs with some re-jigging of the db if that would make it more useful.

There is no real need. We have maybe 20 or so non-warranty parts recoveries in a 12 month period. As it stands now, we send our preferred dealers a letter asking them to hold on to the parts. They send them to our shipper with the SETR # written on the box. When they arrive at the shippers, they contact us for further instruction.

It would be nice to expand the db to cover these, but as I mentioned a looong time ago, I have only until the end of December to finish this project, and since the end of December is this Friday (good ol' Christmas vacation), I don't want to add anything I don't need.

Also, I don't know if I ever mentioned that I am only a co-op student at Toyota. I will think about adding it when (if) I get hired on in September when I graduate (or plan to at least :p).

I already told my boss that I am going to implant a section of code that will render the db useless the day before I graduate! :D:D
 

Users who are viewing this thread

Back
Top Bottom