summaryrefslogtreecommitdiff
path: root/cpp/demo/Database/Oracle/occi/EmpI.cpp
diff options
context:
space:
mode:
authorBernard Normier <bernard@zeroc.com>2006-08-21 21:16:39 +0000
committerBernard Normier <bernard@zeroc.com>2006-08-21 21:16:39 +0000
commit0071d7f28b523ad8cf43c334befdfa527578b5c0 (patch)
treef73d6f7544ca790c7c4f2451ddcb76dc52c4044b /cpp/demo/Database/Oracle/occi/EmpI.cpp
parentfixing stupid argument passing bug (diff)
downloadice-0071d7f28b523ad8cf43c334befdfa527578b5c0.tar.bz2
ice-0071d7f28b523ad8cf43c334befdfa527578b5c0.tar.xz
ice-0071d7f28b523ad8cf43c334befdfa527578b5c0.zip
Oracle occi demo
Diffstat (limited to 'cpp/demo/Database/Oracle/occi/EmpI.cpp')
-rw-r--r--cpp/demo/Database/Oracle/occi/EmpI.cpp142
1 files changed, 75 insertions, 67 deletions
diff --git a/cpp/demo/Database/Oracle/occi/EmpI.cpp b/cpp/demo/Database/Oracle/occi/EmpI.cpp
index 5867fbfe8da..cf962f06356 100644
--- a/cpp/demo/Database/Oracle/occi/EmpI.cpp
+++ b/cpp/demo/Database/Oracle/occi/EmpI.cpp
@@ -55,8 +55,16 @@ EmpI::getDesc(const Ice::Current& current)
}
result.hiredate = empRef->getHiredate().toText();
- result.sal = empRef->getSal().toText(_env, "99,999.99");
- result.comm = empRef->getComm().toText(_env, "0.999");
+
+ if(!empRef->getSal().isNull())
+ {
+ result.sal = empRef->getSal().toText(_env, "99999.99");
+ }
+
+ if(!empRef->getComm().isNull())
+ {
+ result.comm = empRef->getComm().toText(_env, "0.999");
+ }
Ref<DEPT_T> deptRef = empRef->getDeptref();
if(!deptRef.isNull())
@@ -75,79 +83,79 @@ EmpI::getDesc(const Ice::Current& current)
void EmpI::updateDesc(const HR::EmpDesc& newDesc, const Ice::Current& current)
{
ConnectionHolder conh(_pool);
-
- Ref<EMP_T> empRef = getRef(conh.connection(), decodeName(current.id.name));
-
- empRef->setEname(newDesc.ename);
- empRef->setJob(newDesc.job);
-
- if(newDesc.mgr == 0)
{
- empRef->setMgrref(Ref<EMP_T>());
- }
- else
- {
- Ref<EMP_T> mgrRef = getRef(conh.connection(),
- decodeName(newDesc.mgr->ice_getIdentity().name));
- empRef->setMgrref(mgrRef);
- }
-
- if(newDesc.hiredate == "")
- {
- empRef->setHiredate(Date());
- }
- else
- {
- Date hiredate(_env);
- hiredate.fromText(newDesc.hiredate);
- empRef->setHiredate(hiredate);
- }
-
-
- if(newDesc.sal == "")
- {
- empRef->setSal(Number());
- }
- else
- {
- Number sal(0);
- sal.fromText(_env, newDesc.sal, "99,999.99");
- empRef->setSal(sal);
- }
-
- if(newDesc.comm == "")
- {
- empRef->setComm(Number());
- }
- else
- {
- Number comm(0);
- comm.fromText(_env, newDesc.comm, "0.999");
- empRef->setComm(comm);
- }
-
- if(newDesc.edept == 0)
- {
- empRef->setDeptref(Ref<DEPT_T>());
- }
- else
- {
- Ref<DEPT_T> deptRef = DeptI::getRef(conh.connection(),
- decodeName(newDesc.edept->ice_getIdentity().name));
- empRef->setDeptref(deptRef);
+ Ref<EMP_T> empRef = getRef(conh.connection(), decodeName(current.id.name));
+
+ empRef->setEname(newDesc.ename);
+ empRef->setJob(newDesc.job);
+
+ if(newDesc.mgr == 0)
+ {
+ empRef->setMgrref(Ref<EMP_T>());
+ }
+ else
+ {
+ Ref<EMP_T> mgrRef = getRef(conh.connection(),
+ decodeName(newDesc.mgr->ice_getIdentity().name));
+ empRef->setMgrref(mgrRef);
+ }
+
+ if(newDesc.hiredate == "")
+ {
+ empRef->setHiredate(Date());
+ }
+ else
+ {
+ Date hiredate(_env);
+ hiredate.fromText(newDesc.hiredate);
+ empRef->setHiredate(hiredate);
+ }
+
+ if(newDesc.sal == "")
+ {
+ empRef->setSal(Number());
+ }
+ else
+ {
+ Number sal(0);
+ sal.fromText(_env, newDesc.sal, "99999.99");
+ empRef->setSal(sal);
+ }
+
+ if(newDesc.comm == "")
+ {
+ empRef->setComm(Number());
+ }
+ else
+ {
+ Number comm(0);
+ comm.fromText(_env, newDesc.comm, "0.999");
+ empRef->setComm(comm);
+ }
+
+ if(newDesc.edept == 0)
+ {
+ empRef->setDeptref(Ref<DEPT_T>());
+ }
+ else
+ {
+ Ref<DEPT_T> deptRef = DeptI::getRef(conh.connection(),
+ decodeName(newDesc.edept->ice_getIdentity().name));
+ empRef->setDeptref(deptRef);
+ }
+
+ empRef->markModified();
}
-
- empRef->markModified();
conh.commit();
}
void EmpI::remove(const Ice::Current& current)
{
ConnectionHolder conh(_pool);
-
- Ref<EMP_T> empRef = getRef(conh.connection(), decodeName(current.id.name));
-
- empRef->markDelete();
+ {
+ Ref<EMP_T> empRef = getRef(conh.connection(), decodeName(current.id.name));
+ empRef->markDelete();
+ }
conh.commit();
}