On 2012/9/5 9:02, Quan Zongliang wrote:
On 2012/9/4 18:55, Dave Page wrote:
Hi
On Tue, Sep 4, 2012 at 5:19 AM, Quan Zongliang
<[email protected]> wrote:
Hi,
Please find the attachments.
I try to make a enhancement to sequence.
As my understanding, add a property item to properties pane.
The nextValue is lastValue + increment;
Is it right?
If looks right - but the patches don't apply (did you create it from
the master branch?). Please see the errors below. Note that the most
reliable and convenient way to create a patch is "git diff >
patch.diff". Individual patches for each file are not so convenient to
deal with.
raptor:pgAdmin3 dpage$ git apply ~/Downloads/pgSequence.cpp.patch
/Users/dpage/Downloads/pgSequence.cpp.patch:9: trailing whitespace.
nextValue = lastValue + increment;
/Users/dpage/Downloads/pgSequence.cpp.patch:18: trailing whitespace.
+ GetOwnerSql(7, 3, wxT("SEQUENCE ") +
GetQuotedFullIdentifier());
/Users/dpage/Downloads/pgSequence.cpp.patch:26: trailing whitespace.
properties->AppendItem(_("Next value"), GetNextValue());
error: patch failed: pgadmin/schema/pgSequence.cpp:126
error: pgadmin/schema/pgSequence.cpp: patch does not apply
raptor:pgAdmin3 dpage$ git apply ~/Downloads/pgSequence.h.patch
/Users/dpage/Downloads/pgSequence.h.patch:9: trailing whitespace.
wxLongLong GetNextValue() const
/Users/dpage/Downloads/pgSequence.h.patch:10: trailing whitespace.
{
/Users/dpage/Downloads/pgSequence.h.patch:11: trailing whitespace.
return nextValue;
/Users/dpage/Downloads/pgSequence.h.patch:12: trailing whitespace.
}
/Users/dpage/Downloads/pgSequence.h.patch:21: trailing whitespace.
wxLongLong lastValue, nextValue, minValue, maxValue, cacheValue,
increment;
error: patch failed: pgadmin/include/schema/pgSequence.h:51
error: pgadmin/include/schema/pgSequence.h: patch does not apply
The vs2010 express save header and cpp files as dos format.
I guess this is why the patch can not be commited.
New patch file is attached, try again.
Quan Zongliang
Sorry, patch again.
When the sequence is not called, nextValue should be lastValue.
Otherwise, it is lastValue + increment.
Regards,
Quan Zongliang
diff --git a/pgadmin/include/schema/pgSequence.h
b/pgadmin/include/schema/pgSequence.h
index f7ed96d..6776f51 100644
--- a/pgadmin/include/schema/pgSequence.h
+++ b/pgadmin/include/schema/pgSequence.h
@@ -51,6 +51,10 @@ public:
{
return lastValue;
}
+ wxLongLong GetNextValue() const
+ {
+ return nextValue;
+ }
wxLongLong GetMinValue() const
{
return minValue;
@@ -94,7 +98,7 @@ public:
}
private:
- wxLongLong lastValue, minValue, maxValue, cacheValue, increment;
+ wxLongLong lastValue, nextValue, minValue, maxValue, cacheValue,
increment;
bool cycled, called, isReplicated;
};
diff --git a/pgadmin/schema/pgSequence.cpp b/pgadmin/schema/pgSequence.cpp
index 870cf2f..33c0aaf 100644
--- a/pgadmin/schema/pgSequence.cpp
+++ b/pgadmin/schema/pgSequence.cpp
@@ -128,6 +128,10 @@ void pgSequence::UpdateValues()
increment = sequence->GetLongLong(wxT("increment_by"));
cycled = sequence->GetBool(wxT("is_cycled"));
called = sequence->GetBool(wxT("is_called"));
+ if (called)
+ nextValue = lastValue + increment;
+ else
+ nextValue = lastValue;
delete sequence;
}
@@ -178,6 +182,7 @@ void pgSequence::ShowTreeDetail(ctlTree *browser, frmMain
*form, ctlListView *pr
properties->AppendItem(_("Owner"), GetOwner());
properties->AppendItem(_("ACL"), GetAcl());
properties->AppendItem(_("Current value"), GetLastValue());
+ properties->AppendItem(_("Next value"), GetNextValue());
properties->AppendItem(_("Minimum"), GetMinValue());
properties->AppendItem(_("Maximum"), GetMaxValue());
properties->AppendItem(_("Increment"), GetIncrement());
--
Sent via pgadmin-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers